User’s Manual

SIMPROCESS
Release 2.2.1

Copyright © 2000 CACI Products Company August 2000 All rights reserved. No part of this publication may be reproduced by any means without written permission from CACI. The information in document is believed to be accurate in all respects. However, CACI cannot assume the responsibility for any consequences resulting from the use thereof. The information contained herein is subject to change. Revisions to this publication or new editions of it may be issued to incorporate such change. SIMPROCESS is a registered trademark of CACI Products Company.

Table of Contents

Table of Contents
Organization of the SIMPROCESS Documentation Set .............. ix

Part A SIMPROCESS Functions and Features .................................................... 1
CHAPTER 1

Process Modeling and Analysis with SIMPROCESS................... 3
What is Process Modeling?............................................................. 4 Why Dynamic Modeling?............................................................... 6 What is SIMPROCESS? ................................................................. 7 How Do You Use SIMPROCESS? ................................................ 8 SIMPROCESS Terminology .......................................................... 9 SIMPROCESS Menus .................................................................. 12
CHAPTER 2

SIMPROCESS Basics .................................................................. 49
SIMPROCESS Model Components ............................................. 50 Using the Palette Bar to Create Activities .................................... 55 Generate Activity .......................................................................... 61 Delay Activity............................................................................... 65 Dispose Activity ........................................................................... 68 Defining an Entity......................................................................... 69 Defining Resources....................................................................... 73 Defining a Process ........................................................................ 74 Simulation Setup........................................................................... 77 Running a Simulation ................................................................... 81 Standard Output Report ................................................................ 83

SIMPROCESS User’s Manual

i

Table of Contents

Statistical Modeling Constructs ................................................... 85
Why use a statistical approach? .................................................... 86 Random Number Generation ........................................................ 87 Standard Distributions .................................................................. 88 User Defined Distributions ........................................................... 90 Run Settings .................................................................................. 94
CHAPTER 4

CHAPTER 3

Activity Modeling Constructs....................................................... 97
Entity Related Activities ............................................................... 99 Assemble Activity....................................................................... 100 Batch Activity ............................................................................. 103 Unbatch Activity......................................................................... 105 Gate Activity............................................................................... 106 Synchronize Activity .................................................................. 109 Entity Control Activities ............................................................. 110 Assign Activity ........................................................................... 111 Transform Activity ..................................................................... 113 Branch Activity........................................................................... 116 Branch Connectors...................................................................... 119 Merge Activity ............................................................................ 123 Copy Activity.............................................................................. 124 Split and Join Activities .............................................................. 125 Defining a Split Activity............................................................. 127 Defining a Join Activity.............................................................. 132
CHAPTER 5

Resource Modeling Constructs .................................................. 135
Resources and Simulation........................................................... 137 Defining Resources..................................................................... 138 Defining Resource Requirements for Activities ......................... 142
ii SIMPROCESS User’s Manual

Table of Contents

Explicitly Getting and Freeing Resources .................................. 146 Replenishing Consumable Resources ......................................... 153
CHAPTER 6

Graphical Modeling Constructs................................................. 157
Background Text......................................................................... 158 Background Graphics ................................................................. 160 Importing Bitmap Graphics ........................................................ 161
CHAPTER 7

Activity-Based Costing ............................................................... 163
Introduction to Acitivity-Based Costing..................................... 164 Why ABC?.................................................................................. 165 What is ABC? ............................................................................. 166 How Does SIMPROCESS Implement ABC?............................. 167 Benefits of ABC with SIMPROCESS ........................................ 168 How to Use ABC in SIMPROCESS........................................... 169 Setting Up Cost Periods .............................................................. 170 Setting Up Resource Costs ......................................................... 172 Cost Calculations ........................................................................ 175 Displaying ABC Reports ............................................................ 177
CHAPTER 8

Output Reports............................................................................ 181
Standard Output Report .............................................................. 182 Custom Statistics......................................................................... 185 Simulation Results File ............................................................... 195

SIMPROCESS User’s Manual

iii

Table of Contents

Part B Advanced SIMPROCESS Functions and Features.............................. 197
CHAPTER 9

Reusable Templates and Libraries............................................. 199
Library Concepts......................................................................... 200 Defining and Editing Templates ................................................. 202 Editing Templates ....................................................................... 203 Saving a Resource for Reuse ...................................................... 208 Importing Bitmap Graphics For Use As Palette Icons ............... 212
CHAPTER 10

Customizing a Model with Attributes and Expressions ............ 213
Introduction to Attributes and Expressions ................................ 215 Using Attributes in SIMPROCESS ............................................ 218 User Defined Attributes .............................................................. 220 Assign Activity ........................................................................... 230 Variable Resource Usage............................................................ 232 Writing Expressions.................................................................... 234 Evaluate (Evl) Function .............................................................. 240 Expression Activation Events ..................................................... 241 Attribute Value Initialization ...................................................... 246 Example: Batching Entities Based on Weight ............................ 247 User-Defined Functions .............................................................. 257 Dynamic Labels .......................................................................... 258 Summary..................................................................................... 262
CHAPTER 11

More Advanced Model Building................................................ 263
Defining a More Complex Generate Activity............................. 264 Downtime Schedule of Resources .............................................. 280
iv SIMPROCESS User’s Manual

Table of Contents

Event Logs .................................................................................. 291

Part C Advanced SIMPROCESS Tools............................................................. 299
CHAPTER 12

Advanced Data Analysis............................................................. 301
An Introduction to Data Analysis and Modeling........................ 303 Why Statistical Simulation Experiments? .............................................................................. 306 SIMPROCESS Statistical Distributions ..................................... 308
CHAPTER 13

SIMPROCESS Database ............................................................311
Commiting Results To The Database ......................................... 312 System, Design, And Scenario ................................................... 313 Database Table Relationships ..................................................... 316 Database Queries ........................................................................ 317 Forms (Graphs) And Reports...................................................... 319 Launch Database Application ..................................................... 321
CHAPTER 14

Graphics Editor Tool .................................................................. 323
Running SIMDRAW .................................................................. 324 Using the Image Editor ............................................................... 327

SIMPROCESS User’s Manual

v

Table of Contents

Experiment Manager ................................................................. 339
Defining Experiments ................................................................. 340 Running Experiments ................................................................. 348

CHAPTER 15

Appendices ............................................................................................... 355

Appendix A

Activity Summary Table ............................................................ 357
Appendix B

SIMPROCESS File Structure .................................................. 361
Appendix C

Statistical Distributions ............................................................. 369
Uniform Distribution .................................................................. 370 Normal Distribution .................................................................... 371 Triangular Distribution ............................................................... 372 Exponential Distribution............................................................. 373 Gamma Distribution ................................................................... 374 Beta Distribution......................................................................... 375 Erlang Distribution ..................................................................... 376 Weibull Distribution ................................................................... 377 Lognormal Distribution .............................................................. 378 Poisson Distribution.................................................................... 379 Hyper Exponential ...................................................................... 380 Uniform Integer .......................................................................... 381 Geometric.................................................................................... 382 Hyperbolic .................................................................................. 383

vi

SIMPROCESS User’s Manual

................................................. 393 System Attributes....... 424 Index .................................................................................................................................................................................. 411 Format of the Simulation Results File ............................................................................. 410 Appendix F Simulation Results File.... 403 SIMPROCESS Color Table............................................................ 399 System Method Examples ........................... 425 SIMPROCESS User’s Manual vii ......... 412 Appendix G External Event Files........................................................................................................................................................................................................................ 419 General Rules for Event Files ..Table of Contents Statistical Tools Glossary ................. 393 SIMPROCESS System Methods ............................... 421 Examples.................................................................................. 419 Event Record Description ....... 385 Appendix E Appendix D SIMPROCESS System Methods and Examples ..................

Table of Contents viii SIMPROCESS User’s Manual .

Chapter 1 provides an overview of Process Modeling and Analysis and the SIMPROCESS product. SIMPROCESS User’s Manual ix . Chapter 2 provides system requirements and installation instructions.Organization of the SIMPROCESS Documentation Set The SIMPROCESS documentation set consists of two manuals: • • Getting Started With SIMPROCESS SIMPROCESS User’s Manual Getting Started The Getting Started With SIMPROCESS manual is a must for first time SIMPROCESS users. Chapters 3 and 4 of the Getting Started With SIMPROCESS manual provides a tutorial and Chapter 5 provides a description of the demonstration and reference models. This manual can also be used for evaluation purposes.

Chapter 13 covers using the SIMPROCESS Database. Chapters 1 and 2 provide SIMPROCESS terminology and basics. or from the Help/On-line Documentation menubar option. It can be opened directly from the SIMPROCESS Installation CD. and timestamps. x SIMPROCESS User’s Manual . Chapter 3 provides a detailed description of SIMPROCESS Statistical Constructs and their use. Chapter 10 covers the Advanced SIMPROCESS constructs such as attributes. Chapter 5 describes the use of Resources. SimDraw. while Chapter 14 discusses using the graphics editor tool. Part B is a reference intended for advanced users of SIMPROCESS. Part C describes the integrated statistical and drawing tools included with SIMPROCESS Professional. Chapter 8 covers the Output Reports for analysis. expressions. This part contains a detailed documentation of the basic and intermediate functions of SIMPROCESS. The User’s Manual is divided into three parts. Graphical Modeling Constructs are covered in Chapter 6. Chapter 11 wraps-up the advanced features of SIMPROCESS with descriptions of the complex features of the Generate activity and Downtime Schedules for Resources. Chapter 4 describes in detail how the SIMPROCESS Activity Modeling blocks are used. This part contains a detailed documentation of the programming and library management functions in SIMPROCESS Professional. The Experiment Manager is described in Chapter 15. Chapter 12 of this manual provides an introduction to data analysis and Stat::Fit.Organization of the SIMPROCESS Documentation Set User’s Manual The User’s Manual is distributed in electronic format with SIMPROCESS. Chapter 9 provides documentation of the Reusable Templates and Library Management. Chapter 7 is dedicated to Activity-based Costing. Part A is an excellent reference for beginners and casual users.

Part A SIMPROCESS Functions and Features The chapters in Part A describe the basic functions and features of SIMPROCESS. SIMPROCESS User’s Manual 1 .

– 2 SIMPROCESS User’s Manual .

CHAPTER 1 Process Modeling and Analysis with SIMPROCESS SIMPROCESS User’s Manual 3 .

unnecessary work. measurements of the processing capacity of the resources. The enterprise can be a small work group or development team. Tools which provide simple diagramming of a process are called static modeling tools. do not take into account the: • • • • Time varying nature of many processes Non-linear interactions among elements of a process Randomness in the behavior of most real processes Unexpected events which can occur in the business environment. and some measure of the expected workflow through the process. or even an entire company. you need a dynamic business process 4 SIMPROCESS User’s Manual . And those that do. a particular division. many process modeling tools today do not allow a quantified analysis of the process under study. a simple diagram or flowchart can expose the obvious redundancies. a related set of departments. Unfortunately. and inefficiencies in a given process. mathematical models. to expose less obvious bottlenecks and costs intrinsic to the process requires information about the resources employed in the process. The bottom line is that most processes are not well characterized by deterministic. Frequently. However. For a quantified analysis of the time varying business process. The model allows an analyst to study the processes in a business in order to: • • • • • Determine any bottlenecks or wasted effort Devise revisions to the process to correct performance problems Select process designs that give the best results Provide cost justification to planned alternatives Establish performance targets in the new process implementation Many types of tools and techniques are available for Process Modeling.CHAPTER 1–Process Modeling and Analysis with SIMPROCESS What is Process Modeling? The goal of Process Modeling is to create a simplified but useful model of a business enterprise.

SIMPROCESS User’s Manual 5 . which can simulate the behavior of the process as it responds to the events occurring in the business environment.What is Process Modeling? modeling tool.

SIMPROCESS advantages include: • First.CHAPTER 1–Process Modeling and Analysis with SIMPROCESS Why Dynamic Modeling? In a dynamic model. a computer simulates the flow of materials and information through the process. Second. SIMPROCESS employs discrete event simulation to capture the time varying nature of the process under study. the analyst can correlate the data produced by the model with measurements taken from the real processes to gain a good degree of certainty that the model has adequately captured the essential features of the real process. • • 6 SIMPROCESS User’s Manual . the time it takes work items to flow through the process. the model will generate quantified process measurements such as: excess capacity or bottlenecks. the effects of reengineering the process. Third. Simulation offers several advantages over a simple pictorial abstraction of a business process. The dynamic model accounts for the random variations in how work is done and the way materials (and information) flow through the real world. in quantified terms. and the percentage of time in value-adding processes versus nonvalue-adding processes. the model allows the analyst to estimate.

The architecture of SIMPROCESS provides an integrating framework for ABC. The modeling approach in SIMPROCESS manifests this concept. SIMPROCESS is designed for BPR and IT professionals of industrial and service enterprises who need to reduce the time and risk it takes to service customers. bridges. resources. SIMPROCESS integrates process mapping. ABC embodies the concept that a business is a series of inter-related processes. The building blocks of SIMPROCESS are processes. hierarchical event-driven simulation. and builds on it by organizing and analyzing cost information on an activity basis. fulfill demand.What is SIMPROCESS? What is SIMPROCESS? SIMPROCESS is a hierarchical and integrated process simulation tool that radically improves your productivity for process modeling and analysis. SIMPROCESS User’s Manual 7 . and entities (flow objects). Process Mapping Event-driven Simulation Activity-based Costing SIMPROCESS Unlike other tools. and activity-based costing (ABC) into a single tool. and develop new products. ABC and dynamic process analysis. and that these processes consist of activities that convert inputs to outputs.

many things that a process receives. Resources. To sum it up. SIMPROCESS allows you to try out proposed alternatives and different management policies. machines. SIMPROCESS generates valuable information about the Activities.CHAPTER 1–Process Modeling and Analysis with SIMPROCESS How Do You Use SIMPROCESS? SIMPROCESS allows you. SIMPROCESS employs simple elements to construct a business model: Processes. While the functionality of most business process modeling tools ends at that point. the value of SIMPROCESS has just begun. 8 SIMPROCESS User’s Manual . and Entities. you can use the generated statistics and reports to determine where the process needs to be improved. Next. to create an abstract model of a process under study. Entities could be: • • • • • • proposals orders invoices customers work-in-process patients In fact. such as people. as a consultant or analyst. During a simulation. Entities. and Resources in the model. The Resources. or information required to complete the tasks are also included in the business model. it also allows you to simulate the flow of entities through the defined process. SIMPROCESS helps a team decide which changes to the structure and operational policies in a business process will provide the most benefits. you produce a computer model of a business process from which documentation (diagrams and descriptions) can be printed. From this data. With it. acts upon. you can make sure that the process has been accurately captured. Finally. or produces should be included in the definition of the business process. Because SIMPROCESS is a dynamic modeling tool. Items flow from one process step to the next and at each step some task is performed.

Cycle time A Entity’s cycle time is the sum of the processing times and delays it encounters as it travels across the model.SIMPROCESS Terminology SIMPROCESS Terminology This manual uses the following words and meanings in its description of SIMPROCESS. Store data collected during a simulation run. and Dispose. Attributes may be used to: • • • Connectors Alter the behavior of a process by changing the value of an attribute during a simulation. Activities An Activity is a basic step in a model where an operation is performed on a entity. SIMPROCESS User’s Manual 9 . Delay. Examples of activities are Generate. They can also be used to: Communicate information (such as attribute values) between two processes in a model. Attributes Attributes are system and user-defined variables of model elements whose value can change during the course of a simulation run. An activity may or may not involve passage of time. possibly using Resources. Connectors link Activities and Processes together and are paths used by entities to flow through the model. Or.

an entity type must be defined from the menu. A Process is a collection of Activities and sub-Processes organized as a model network.g. Most frequently. Model A SIMPROCESS model is a representation of the system being studied. The layout can be made to resemble the physical layout of a system or it can be closer in appearance to a flow diagram. Batch. but rather a simplified version that just captures the relevant features. Assemble) may produce entity instances as well. instances of a predefined entity type are created at the Generate activity. Entities must be disposed to ensure statistics collection Hierarchical Processes The concept of Process provides hierarchical modeling capabilities.CHAPTER 1–Process Modeling and Analysis with SIMPROCESS Entities An entity represents people. processes. Pads Pads are small triangular graphic objects located along the border of an Activity/Process. It is only the topology that matters. Most are produced as a result of a process or activity. and connectors that make up your SIMPROCESS model. Pads are used for connecting connectors to the 10 SIMPROCESS User’s Manual . It is not intended to be an exact duplicate of the system. Prior to introducing instances of an entity into the model. goods or information. The entities only appear on the layout while the simulation is running. Layout The layout contains graphical representations of the activities. although other activities (e.

Any number of alternatives can be associated with a Process. Simulation Simulation is defined as the reproduction of the dynamic and random behavior of a business process with the goal of quantifying some key characteristics of the business process.SIMPROCESS Terminology inputs and outputs of the Activity/Process. and Resources can be stored in a library for reuse. Processes. and trucks are all examples of Resources. Entities enter and exit activities through input and output pads. Resources may be consumable or reusable. People. computers. Templates Templates of Activities. Resources The agents required to perform an Activity are known as Resources. SIMPROCESS User’s Manual 11 . but only one can be active at any point in time. Sub-Process (Alternative) Alternative Processes define alternative behaviors of a Process.

and to save a model under a different name any time you extensively change a model. To save a new model or to save an existing model 12 SIMPROCESS User’s Manual . It is a good idea to save a model any time you make changes to it. SIMPROCESS saves your models with the extension. You can only have one model open at a time. you will be prompted on whether or not you wish to save any changes to the open model.bck.CHAPTER 1–Process Modeling and Analysis with SIMPROCESS SIMPROCESS Menus File Menu New File/New creates a new model file. If you already have a model open and you have made changes since your last save. You can only have one model open at a time. you will be prompted on whether or not you wish to save any changes to the open model.spm and at the same time also saves a backup with the extension . If you already have a model open. Open File/Open loads a previously saved model. Save Saves the model.

If you save copies of your models as you make changes it will give you a way to backtrack. You must give the imported bitmap a unique name. For example. The file type is the standard bitmap file type for the windowing environment you are using. See the SA/SIMULATOR documentation for more information on this feature. You will often find that after making revisions to a model you may decide that you have proceeded down a “blind alley. the file type used is the Windows Bitmap (.. on X-Window systems.. You should do this even if you do not think you will be going back and using the old model. see “Other Preferences” on page 22 Save As… Used to save a model for the first time. If you plan on making extensive revisions to an existing model. or to save a model with a new name.BMP). if necessary.XWD).” and wish that you could go back to your original model. SA/BPR File. the file type is the X-Windows bitmap (. For information on automatic saving. SIMPROCESS User’s Manual 13 . it is a good idea to load the model and then give it a new name using Save As…. This command lets you import a file from SA/BPR System Architect from POPKIN Software. Import Bitmap File… This command lets you import a bitmap to use as a SIMPROCESS icon or background.SIMPROCESS Menus under a new name. on Microsoft Windows systems. use File/Save As…. Export ASCII Model File… Outputs the model to a file in text format for the purpose of portability between platforms.

XWD file.CHAPTER 1–Process Modeling and Analysis with SIMPROCESS Bitmap File… Creates a bitmap image of the current layout.. Exports the results of the current model to a tab-delimited file. A preview bitmap is not included with the EPS file. The file can be opened with a text editor or spreadsheet. on X-Windows platforms. just a sizing box.BMP file. The bitmap file type will be the default for the platform you are using: on Windows machines.. Simulation Results.. it will be a . Activity List. Encapsulated PostScript files can easily be imported into a word processor or other program. 14 SIMPROCESS User’s Manual . See the InConcert documentation for more information on this feature. it will be an .. Encapsulated Postscript… Creates an encapsulated PostScript image of the current layout. Outputs the process and activity hierarchy to an ASCII file. InConcert Workflow File Outputs your model file in a format that can be read by the InConcert Workflow tool. The data from all reports selected for the current model will be written to this file. so that you will not see an image of the file in your application.

Print All will write all levels of the model hierarchy to the EPS file. B= 100) or completely black (R=0.SIMPROCESS Menus You can set various options for the EPS file. We recommend that you use this option for readability. If Show border is enabled. For most applications its probably best not to make the Background Color either white (R=100. This will make the default size in your application to be your chosen size. Normally you leave the Number of Copies set to 1. SIMPROCESS User’s Manual 15 . Although you can resize an EPS graphic in an application. it is often convenient to set the Width and Height to be close to the size you will be printing them at. You can change the Background Color (%) for you intended final use. PS fonts will use actual PostScript fonts instead of the SIMPROCESS fonts. G = 100. a border will be drawn around the EPS graphic and it will be labeled with the name of the model.

with a . Process Name: Process2 Process Path: Process2 Process Comment: AS-IS Process with 3 Service and 4 Sales Reps Process Name: Alt1 Process Path: Process2:Alt1 Process Comment: Process Name: Route Calls Process Path: Process2:Alt1:Route Calls Process Comment: Process Name: Customer Service Process Path: Process2:Alt1:Customer Service Process Comment: Process Name: Sales Process Path: Process2:Alt1:Sales Process Comment: 16 SIMPROCESS User’s Manual .doc extension. but the layout color will not be. Left.CHAPTER 1–Process Modeling and Analysis with SIMPROCESS G=0. The following is a sample process documentation file. B=0). You can change the Orientation of the EPS image. The default values produce a pale gray when printed on a black and white printer. Landscape will rotate the image of the layout 90 degrees in the EPS file. as well as the path to each subprocess and their descriptions. Portrait is the default. Print Print Layout… This command prints a picture of the current model layout to the system printer. You can shift the EPS image around by entering an Offset From Lower You might want to do this if you are capturing an image that is not centered on the layout. The file. Background icons will be printed. Process Documentation… Creates a text file with a description of a selected process. contains the information entered into the description created when the Document command button was used. See the EPS graphic above.

doc extension which contains a description of all elements of the model. and Resources in the model.SIMPROCESS Menus Model Documentation… This command creates a file with a . The following is a sample model documentation file. This includes Name. Entities. Path and Comment field entries of all Activities/Processes. Any information you have added using the Document command button is also included in this file. Printing Model Documentation on Wed Jan 17 13:50:16 1996 _________________________________________________________ Process Section _________________________________________________________ Process Name: Process1 Process Path: Process1 Process Comment: This process generates 2 types of calls Process Name: Process2 Process Path: Process2 Process Comment: AS-IS Process with 3 Service and 4 Sales Reps Process Name: Process3 Process Path: Process3 Process Comment: Process Name: Alt1 Process Path: Process1:Alt1 Process Comment: Process Name: Alt1 Process Path: Process2:Alt1 Process Comment: Process Name: Alt1 Process Path: Process3:Alt1 Process Comment: Process Name: Generate Service Calls Process Path: Process1:Alt1:Generate Service Calls Process Comment: Process Name: Generate Sales Calls Process Path: Process1:Alt1:Generate Sales Calls Process Comment: Process Name: Route Calls Process Path: Process2:Alt1:Route Calls Process Comment: SIMPROCESS User’s Manual 17 .

CHAPTER 1–Process Modeling and Analysis with SIMPROCESS Process Name: Customer Service Process Path: Process2:Alt1:Customer Service Process Comment: Process Name: Sales Process Path: Process2:Alt1:Sales Process Comment: Process Name: Dispose9 Process Path: Process3:Alt1:Dispose9 Process Comment: _________________________________________________________ Entity Section _________________________________________________________ Entity Service Calls Entity priority Entity Sales Calls Entity priority Entity dummyentity Entity priority _________________________________________________________ Resource Section _________________________________________________________ Process Name: Sales Rep Process Comment: Process Name: Service Rep Process Comment: List of Most Recently Used Models The File menu contains a list of the most recently used models. You can load any of these models by clicking on its name. Exit Quits SIMPROCESS. without going through File/Open…. If you have made edits since you last saved the current model. 18 SIMPROCESS User’s Manual . you will be prompted to save your model before exiting.

you can Paste again and again. The cut object is copied to a temporary storage area and the object may be pasted onto a different part of the layout using Edit/Paste. without having to make another copy of the original object. SIMPROCESS User’s Manual 19 . Certain objects. Paste Edit/Paste makes a copy of the object in the temporary storage area and pastes it onto the layout.SIMPROCESS Menus Edit Menu Cut Cuts the selected object from the model layout. Once a copy is made. Copy Copy places a copy of the selected object in a temporary storage area. If you want to make multiple copies of an object. can only be cleared and cannot be cut. It will remain there until replaced by another object that is cut or copied. it can be pasted on the layout by using the Edit/Paste command. such as Connectors.

can only be cleared and cannot be cut. 20 SIMPROCESS User’s Manual . This combines the two preceding commands into one command. such as Connectors. Select All Selects all objects on the model layout. Resize Lets you resize a layout object. Certain objects. Clear Deletes a selected object without copying it to the clipboard. You can resize the horizontal and vertical directions separately if you wish to resize the icon in a nonproportional way. This is useful when you want to quickly copy something on the layout and paste it somewhere else.CHAPTER 1–Process Modeling and Analysis with SIMPROCESS Duplicate… Duplicate is a shortcut that copies a selected object from the layout and then does a paste to a position selected on the layout.

if you need more space in the work area. Icon Scale lets you set the default size for new activities. Activities Show Name lets you specify whether you want the name to show on the layout by default when a new activity is created. on or off. or if you are going to have many activities you might set it to a small value. Toolbars This item lets you turn the Toolbar. SIMPROCESS User’s Manual 21 . SIMPROCESS will ask for confirmation when you delete a Pad.SIMPROCESS Menus Preferences This menu item lets you set personal preferences for various options in SIMPROCESS. If you are only going to have a few activities on screen you might set this to a large value. Palette. These preferences take effect after the dialog is closed. Connectors Show Name lets you specify whether you want the name to show on the layout. If Show Text Block is turned on. If Confirm Delete is checked. You may wish to turn one or more of them off. or Colorbar. Pads Show Name lets you specify whether you want the name to show on the layout. the text blocks for the activities will be displayed on the layout. They do not affect items that are already on the layout. SIMPROCESS will ask for confirmation when you delete an Activity. If Confirm Delete is checked then SIMPROCESS will ask for confirmation when you delete a Connector. Icon Scale lets you set the default size for new pads. If Confirm Delete is checked.

spm file.bck file. Time Between Auto Saves determines the approximate amount of time between automatic saves of your model. The time is approximate because the automatic save feature is only active when a model is being built or modified. the name of the temporary file will be default.tmp. The feature does not activate during simulation runs. but programs like MS Word can be used. The . on page 59 describes documenting your model. and the default line style for new connectors can be set. If line width is zero.CHAPTER 1–Process Modeling and Analysis with SIMPROCESS Line Width lets you specify the default line width for new connectors.tmp and will be located in the Spuser directory. If your current model is new and you have not saved your work to a . Other Preferences Show Graphic Handles lets you specify whether the resize handles will be visible when an activity or process is selected. Line Style will be active.bck file is created or updated when you initiate a save. except with the extension . See “Save” on page 12 for information on the backup file. or during periods of inactivity. 22 SIMPROCESS User’s Manual . The default is Notepad. The automatic save feature creates a file with the same name as your current model. Documentation editor lets you specify the text editor for documentation. NOTE The automatic save does not affect the . during Experiment Manager operation. Chapter 2–SIMPROCESS Basics.

If the name is followed by (E) then the activity has an expression. Any name followed by a (+) signifies a hierarchical process. Double-clicking on the name will expand the tree diagram. You can select an activity and either Edit the properties of that activity SIMPROCESS User’s Manual 23 . A dialog box lists all the activities and processes contained in your model. displaying activities and processes underneath. and if the name is followed by (R) then the activity has a resource.SIMPROCESS Menus Activity Browser… The Activity Browser is a handy feature for navigating among and editing activities.

and not bring up their dialog box. For an activity this has the same effect as doubleclicking on it (on Windows platforms). display only the activities with expressions. you can search for a specific activity by name. 24 SIMPROCESS User’s Manual . You will use this menu item most often when you want to edit Hierarchical Processes. Properties… Selecting Edit/Properties… will bring up the Properties dialog box for the selected item. and contract to the highest level of the model.CHAPTER 1–Process Modeling and Analysis with SIMPROCESS or Go To the layer in the model layout where that activity resides. expand the complete model hierarchy. since double-clicking on them will show their internal structure. Also.

SIMPROCESS Menus View Menu Descend Descend will take you down one level in the model hierarchy. Ascend Ascend will take you one level up in the process hierarchy. SIMPROCESS User’s Manual 25 . Go To Top Go To Top takes you to the top of the process hierarchy.

Show All Show All makes all activity names visible throughout your model. Local Local shows or hides activity names based on their individual properties (set with the Properties dialog Show name checkbox). Show Attached Makes all the Activities that are connected to a selected Activity visible. Activity Names These menu items only affect the display of activity names. Show All Makes all Activities and their connectors visible.CHAPTER 1–Process Modeling and Analysis with SIMPROCESS Activities Hide Hides the selected activity. 26 SIMPROCESS User’s Manual . Hide All Hide All makes all activity names invisible throughout your model. The activities with resources are displayed first. The activity and its connectors to it will not be visible on the layout. Other activities can be displayed by expanding the processes. The changes are not saved with the model. This is the default setting when you open a model. Resources By Activity View or edit resource usage by activity.

Zoom In Zoom In allows you to magnify a section of the layout to see more detail. Local Local shows or hides connector names based on their individual properties (set with the Properties dialog Show name checkbox). SIMPROCESS User’s Manual 27 .SIMPROCESS Menus Connector Names Show All Show All makes all connector names visible throughout your model. Hide All Hide All makes all connector names invisible throughout your model. Local Local shows or hides pad names based on their individual properties (set with the properties dialog Show name checkbox). This is the default setting when you open a model. Pad Names Show All Show makes all pad names visible throughout your model. select the area you wish to see in detail by clicking and dragging the mouse to define a rectangle on the layout. After choosing Zoom In. This is the default setting when you open a model. Hide All Hide makes all pad names invisible throughout your model.

Fit to Window Zooms to a size at which the entire model layout. 28 SIMPROCESS User’s Manual . Refresh Redraws the current screen. is visible at one time. the number of screens specified in Layout/Size. It lets you see a larger portion of the screen layout. that is.CHAPTER 1–Process Modeling and Analysis with SIMPROCESS Zoom Out Zoom Out is the reverse of Zoom In. View (1:1) Returns the layout window to its original size.

the new color of the background may be a surprise! SIMPROCESS User’s Manual 29 . Background Color Changes the background color of the layout to the selected color. if the view were set at 1:1 and the size is two screens.SIMPROCESS Menus Layout Menu Size… Sets the size of the work area in terms of the number of “screens. If the color bar is not visible. then there is twice as much work area as is visible.” For example.

30 SIMPROCESS User’s Manual . will align the bottoms of the selected objects.CHAPTER 1–Process Modeling and Analysis with SIMPROCESS Align… With this command you can align a number of selected objects according to various criteria. The screen shots below show the effect of using Align. Bottom Left will align the left sides of the selected objects will align the right sides of the selected objects Right Center (Vertical) will align the centers of the selected objects along a vertical line. Top will align the tops of the selected objects. Center (Horizontal) will align the centers of the selected objects along a horizontal line.

SIMPROCESS Menus Before aligning the horizontal centers: After aligning the horizontal centers: SIMPROCESS User’s Manual 31 .

or about a circle. Before using Distribute: 32 SIMPROCESS User’s Manual .CHAPTER 1–Process Modeling and Analysis with SIMPROCESS Distribute… This will distribute three or more selected objects so that they are equally spaced. The screen shots below show the results of using Distribute on some unequally spaced objects. either in a vertical direction. a horizontal direction.

You could also cut the group from the layout. Ungroup Breaks up a group into the original components that went into making the group. This can be useful when your model is divided into logical sections. all normal editing operations that can be done on an individual object can be done on the group. You can group a section. use Ungroup.SIMPROCESS Menus After using Distribute: Distribute Pads If you have added pads to a Hierarchical Process. Once objects are grouped. SIMPROCESS User’s Manual 33 . If you wish to edit individual components of a group. You may be happy with the way each section appears. you can space them evenly by selecting Distribute Pads. or copy and paste it to create an identical group. and then move it with respect to the other sections. but not with their relation to one another. Group Combines multiple objects into a group.

so that you can hide the object behind the other objects. to allow editing of objects that were behind it. The grid has no significance to your model. Three levels are offered: Fine. Grid Lines Places a grid on the model layout as a convenience in aligning objects. Medium. Snap To Grid If Snap To Grid is turned on. Grid Spacing Changes the spacing of the grid.CHAPTER 1–Process Modeling and Analysis with SIMPROCESS Bring to Front Brings an object that is behind another on the layout to the front so that it can be edited. and Coarse. rather than graphically dragging and dropping them from the palette. Create Menu Activities This command provides an alternative way of creating Activities. 34 SIMPROCESS User’s Manual . you can only place objects on the layout at grid intersections. Send to Back Sends an object that is at the front of the model layout to the back. Grid Color Changes the color of the grid to the color selected on the color pallette.

they will be added to this menu even if you do not add them to the palette. they will be added to this menu even if you do not add them to the palette. Processes This command provides an alternative way of creating processes. When you add new processes to the library. Define Menu SIMPROCESS User’s Manual 35 . rather than graphically dragging and dropping them from the palette.SIMPROCESS Menus When you add new Activities to the library.

copying and removing Entities to the model. Resources… Used for adding.CHAPTER 1–Process Modeling and Analysis with SIMPROCESS Entities… Used for adding. copying and removing Resources to the model. editing. editing. 36 SIMPROCESS User’s Manual .

it can be used throughout the model without the need to redefine the parameters of the distribution. Once a Distribution is defined. copying and removing customized Standard and Tabular Distributions to the model.SIMPROCESS Menus Distributions Used for adding. SIMPROCESS User’s Manual 37 . editing.

resources. and the model. editing.CHAPTER 1–Process Modeling and Analysis with SIMPROCESS Functions… Used for adding. Seeds… Used for viewing the random number stream seeds. If you have a mathematical function which you would like to use in several places in your model you can define it here. activities. copying and removing Functions to the model. 38 SIMPROCESS User’s Manual . Attributes Used for globally defining attributes for entities.

SIMPROCESS User’s Manual 39 .SIMPROCESS Menus Time Stamps… Used for adding. Model Description… This feature is useful for providing an overview of your model so users can quickly familiarize themselves with your model. This option also allows saving templates to a library or loading a new library. Time Stamps can be used as event logs. editing. copying and removing Time Stamps to the model. Templates Used for defining and editing Templates.

It is given in calendar and time format.CHAPTER 1–Process Modeling and Analysis with SIMPROCESS Simulate Menu Run Settings… Simulation Period The Simulation Period determines how long your simulation will run. 40 SIMPROCESS User’s Manual . Choose an appropriate time span to see all aspects of your system.

Animation time will be lengthened by this value. Timescale This option has the effect of allowing you to set a timescale so that events that are too close to each other and events that are too far apart can be differentiated. no real clock time is spent between two consecutive simulation events. The Number of Replications is the number of times the simulation will be run. Warmup Length The Warmup Length is the amount of simulation time that will elapse before statistical data is collected. Number of Replications Since statistical variation is built into SIMPROCESS. and wish the simulation to reach a steady state before collecting data. The larger the number the farther apart the events. By setting Timescale to a value between 0 and 1. it is a good idea to run the simulation more than once for statistical accuracy. If this box is not checked.SIMPROCESS Menus Warmup Every Replication Sets whether or not you wish to have a warmup period for every replication. You might want to have a warmup period if you are worried about transient effects. The simulation clock jumps from the time of one event to the time of the next event. Reset Random Number Streams Resets the random number streams between replications. there will only be a warmup period before the first replication. you cause SIMPROCESS to wait for some period of real time to elapse before moving on to the next event. making it easier for you to see what is occurring at each moment. SIMPROCESS User’s Manual 41 . Reset System Resets the system to the initial conditions before each replication. This has the effect of slowing down the animation of a simulation. If you use the default value of 0.

If animation is turned off. Counts for all other activities and processes show how many entities are in that process or activity. Show Entities Show Entities turns the display of entities on or off during the animation. Show Counts If Show Counts is turned on. Showing entities helps you visualize the workflow. each activity or process will display a number above its icon. if you set Timescale to 0. set Timescale to zero. Define Cost Periods… Helps you define cost periods for activity based costing calculations. Counts for Dispose activities show how many entities have been disposed.CHAPTER 1–Process Modeling and Analysis with SIMPROCESS For example. 42 SIMPROCESS User’s Manual .16. Animation Settings… Show Clock Turns on or off a clock which displays simulation time while the simulation is running. Counts for Generate activities show the number of entities generated. Set Timescale to higher numbers to achieve a greater ratio of clock time to simulation time. approximately one second of real clock time elapses for each minute of simulation time.

The smallest value allowed is 1. counts. but does not turn on animation that is turned off in the Animation Settings.SIMPROCESS Menus Update Dynamic Labels Update Dynamic Labels turns the display of dynamic labels on or off during the animation. Animation On Turns on animation that has been turned off with Animation Off. Run Verifies the model and then starts the simulation running. Animation Speed You can change the Animation Speed to speed up or slow down the simulation. You may wish to set this to a smaller value while you are debugging your model. You may choose to save reports from partial runs. regardless of the individual settings (clock. and the default is 1000. SIMPROCESS User’s Manual 43 . Stop Stops the simulation and ends the collection of statistics. The fastest value is 5000. Resume Resumes running a paused simulation. Pause Pauses the simulation. Animation Off Turns all animation off. entities).

Report Menu Define Global Statistics Collection Define Global Statistics Collection is where you set which statistics you wish to collect during the model execution. a Generate activity is left unconnected. for example. on page 181. If. on page 181. 44 SIMPROCESS User’s Manual . It is described in detail in Chapter 8–Output Reports.CHAPTER 1–Process Modeling and Analysis with SIMPROCESS Verify Model Checks the model to see whether or not all the activities are connected properly and whether the model can be simulated. It is described in detail in Chapter 8–Output Reports. the verification process will alert you to this. Define Real-Time Plots Define Real-Time Plots is where you set which real-time plots you wish to view during the simulation run.

The Manage Results form launches automatically when launching MS Access from this menu item. It is described in detail in Chapter 8–Output Reports. The Manage Results form is described in detail in Chapter 13– SIMPROCESS Database. Launch Database Application Launch Database Application allows you to start your database application from within SIMPROCESS. The Access database opens to the Experiment Setup form. Described in detail in Chapter 13–SIMPROCESS Database. on page 339. Experiment Menu Define Experiments Define Experiments is where you setup the experiments you wish to run. on page 311. on page 181.SIMPROCESS Menus Display Standard Report Display Standard Report is where you view the results from the simulation run either in a text editor or a spreadsheet. It is described in detail in Chapter 15–Experiment Manager. SIMPROCESS User’s Manual 45 . on page 163. on page 311. Commit to Database Commit to Database is where you send simulation results to the SIMPROCESS database (SimProcDB). Described in detail in Chapter 7–Activity-Based Costing. Display ABC Reports Displays the Activity-Based Costing reports.

46 SIMPROCESS User’s Manual .CHAPTER 1–Process Modeling and Analysis with SIMPROCESS Run All Experiments Run All Experiments attempts to run every experiment defined in the SIMPROCESS database. Stat::Fit can analyze data to determine the best fit with one of the standard statistical distributions. SimDraw is a graphics editor that can be used to create graphics for use with SIMPROCESS models. It is described in detail in Chapter 15–Experiment Manager. Tools Menu The items on the Tool menu are additional features available in SIMPROCESS Professional. Stat::Fit This item brings up Stat::Fit. SimDraw This item brings up SimDraw. on page 339. It is described in detail in Chapter 15–Experiment Manager. It is described in detail in Chapter 15– Experiment Manager. on page 339. Run Specific Experiment Run Specific Experiment allows you to enter an experiment name that SIMPROCESS will attempt to run. Run Selected Experiments Run Selected Experiments attempts to run experiments defined in the database for which the Selected field is checked. on page 339.

including the version. from which you can gain access to other parts of the SIMPROCESS Help System. and information about how to obtain technical support for SIMPROCESS.SIMPROCESS Menus Help Menu SIMPROCESS Help Displays a list of main help topics. About SIMPROCESS Displays information about SIMPROCESS. SIMPROCESS Books Online Opens either the SIMPROCESS Getting Started or User’s Manual. SIMPROCESS User’s Manual 47 . the copyright. you must load the Adobe Acrobat Reader which can be found on the SIMPROCESS Installation CD. To view the documentation. This contains the complete documentation set for SIMPROCESS.

CHAPTER 1–Process Modeling and Analysis with SIMPROCESS 48 SIMPROCESS User’s Manual .

CHAPTER 2 SIMPROCESS Basics SIMPROCESS User’s Manual 49 .

At this level of the model. Activities represent the details of business operations. when a customer order is received. Identifying the customer.CHAPTER 2–SIMPROCESS Basics SIMPROCESS Model Components A SIMPROCESS model contains the following components: • • • • • • Processes Activities Entities Resources Connectors Pads Processes and Activities represent business operations in a SIMPROCESS model. with processes typically encompassing other processes and activities. Verifying the customer profile against information contained in the customer’s order. processing steps might include: 1. in a mail order fulfillment operation. Processes A set of processes can represent the operation of a business at a very high level. Each of these steps can be modeled as an activity. they could comprise a single process that might be called “Access/Create Customer Profile. 2. For example. 3. 50 SIMPROCESS User’s Manual . you see only an outline of the business process. Creating or accessing a customer profile. Collectively. SIMPROCESS models can be arranged in a hierarchy.” The Process construct allows you to break down a business process into successively more detailed layers.

SIMPROCESS Model Components A Process can be (and usually is) composed of other Processes and Activities. which requires a clerk to handle it. deliveries. During the simulation. they emerge as icons flowing through the model. a general-purpose activity that can be used to represent almost any task requiring some period of time to accomplish. the clerk handling the call needs to gather customer information and enter it into a database.g. Activities cannot be decomposed. if animation is turned on. etc. The most frequently used SIMPROCESS activity is the Delay. or perform work at activities. which appear as icons in the model layout. Activities SIMPROCESS contains a suite of Activities. Unlike processes and activities. the order is an Entity. service requests. when a new customer places an order. They represent things (e. In the order fulfillment process. the customer order is an Entity. For example: • A customer calls in an order. Actions can be physical or logical. For example. people) and information (orders. each reflecting a different type of action. and the clerk is a Resource. Resources Resources are the agents that add value to entities. These tasks can be represented by Delay activities. SIMPROCESS User’s Manual 51 . Most entities originate at Generate activities. Entities Entities are objects that circulate through the model.) that flow from activity to activity. Order entry is the Activity. Then the clerk verifies the information with the customer. SIMPROCESS entities aren’t visible until you run a simulation.. parts.

if a clerk is always available to handle an incoming order. If you have two clerks and a customer order arrives while both clerks are busy handling other tasks. knowing how resources are used is a key factor in understanding and improving upon the way a business operates. it might mean that you have more clerks than you need. The way to minimize cycle time and activity costs in your business process is by experimenting with different levels of resources and different costs. Pads can be queueing areas for entities waiting for a resource or condition. a truck is required to deliver merchandise to the customer. entering nodes at input pads and exiting at output pads. On the other hand. The amount of time the customer order spends waiting for an available clerk is shown in the Entity Cycle Time by State output report as Wait for Resource. Lack of resources can be a cause of bottlenecks in a business process.CHAPTER 2–SIMPROCESS Basics • When an order is filled. For instance. order fulfillment is delayed until a clerk becomes available. Pads also connect one level of a process hierarchy to another. In either event. A single pad can connect one or (possibly) more connectors. Pads Pads are small triangular objects attached to activities and processes which serve as attachment points for connectors. the availability of a resource affects the amount of time it takes an Entity to flow through the process. 52 SIMPROCESS User’s Manual . Another way to describe this situation. Connectors Connectors link activities and processes together and are the paths used by entities to flow through the model. the truck is a Resource. Entities flow in one direction. is that the order waited in a queue for the available resource.

and Dispose activities. You can generate reports and statistics describing the flow of people. By running simulations on this model. entities pass through other activities. Along the way. and finally proceed to a Dispose activity. When you build a model. There are some things that are common to most activities. The remainder of the chapter describes the core SIMPROCESS activities in detail. you can see bottlenecks as they occur. The end result is a dynamic model of the business process. Delay activities are used to represent value adding and non-value adding activities. You can build a simple model with just three activity objects: the Generate. SIMPROCESS User’s Manual 53 . Delay. Entities are generated from one or more Generate Activities. with particular attention devoted to the powerful Generate activity and the entities that it generates. traverse the model. materials and information and quantifying how resources are used. you supply numeric and symbolic attributes to the various activities and the entities that are processed at these activities. This chapter begins with a discussion of the input fields and command buttons used to define these items. You also define the resources needed to process the entities.SIMPROCESS Model Components Putting it Together When you put it all together. All models require a Generate activity to generate Entities and a Dispose activity to end the processing of entities. such as Delays and Branches. And you can continue to modify the model in order to experiment with different scenarios. where they are disposed of. a SIMPROCESS model shows a business process as a set of Nodes (Processes and Activities) connected by Connectors. such as the activity name and resources required by the activity.

and in “Explicitly Getting and Freeing Resources” on page 146. beginning on page 97.CHAPTER 2–SIMPROCESS Basics The remaining SIMPROCESS activities are described in Chapter 4–Activity Modeling Constructs. 54 SIMPROCESS User’s Manual .

Using the Palette Bar to Create Activities Using the Palette Bar to Create Activities The Palette bar is the two columns of buttons running down the left margin of the SIMPROCESS window. the button appears pressed in. Click once on the Generate activity Palette bar button. Once selected. Begin by adding a Generate activity to the model. SIMPROCESS User’s Manual 55 . You can use these buttons to place model building blocks on the SIMPROCESS layout — the central region of the SIMPROCESS window. with the inside edges shaded.

select it. To draw a rectangle. press and hold the left mouse button while dragging the mouse. To remove several items at one time. When you have selected the items you want to delete. press Delete. Each time you click. For example. the Generate button is deselected.CHAPTER 2–SIMPROCESS Basics Next. This name appears below the activity and it can be moved on the layout. Drawing a rectangle around the objects you are selecting. click on the Generate button. SIMPROCESS User’s Manual . point and click on the SIMPROCESS layout. If you need to add several activities of the same type. Release the Shift key before dropping the last icon or click once on the Generate button to deactivate the Generate button. then press the Delete key. A Generate activity icon is added at the location you point to. Common Activity Input Fields Activity Properties dialog boxes have the following common input fields: • Name is the name you choose to identify the activity you are creating. you can select the items by either: • • Pressing and holding the Shift key while you point and click on each item. press and hold the Shift key while clicking on the layout. After you click on the layout. or select Edit/Clear from the menu. a Generate icon is added to the layout. • 56 Icon identifies the graphic icon representing the Activity. and then press and hold Shift before clicking. Removing Objects from the Layout To remove an object such as an activity icon from the layout. point at an area on the layout. Continue to hold down the Shift key and point and click at different spots on the layout.

Document opens an edit window for adding descriptive text • • about the activity.” beginning on page 213. or as a statistical distribution. The following command buttons and fields are found on most Activity Properties dialog boxes: • Resources defines the resources required to process entities arriving at the activity. you can specify either Delay Before Activity or Delay After Activity. Hours. If one or more of these resources are unavailable. Help displays information about the activity. For some activities. the entity waits in a queue until the resource can be obtained. This tells SIMPROCESS whether to attribute the delay time to the entity when it arrives or after it is ready to be released. Event Logs • • • • are used for defining timestamps and recorders.” beginning on page 213. Minutes. This comment appears in the status bar when the activity is selected. Attributes define custom attributes that the activity requires.Using the Palette Bar to Create Activities • Comment is a one line comment about the activity. • Duration/Time Units determines if the Duration entered is measured as Seconds. or Weeks. • Duration/Value is the amount of time it takes the activity to process an entity. ”Customizing a Model with Attributes and Expressions. Expressions allows you to define customized processing for the activity at various points during a simulation. This topic is covered in detail in Chapter 10. once the required resources are obtained. SIMPROCESS User’s Manual 57 . Days. This topic is covered extensively in Chapter 10. ”Customizing a Model with Attributes and Expressions. Text Block is a three line description that appears within the Activity’s icon on the layout. Time can be defined as a constant.

CHAPTER 2–SIMPROCESS Basics Naming Activities Use the Name field to assign a name to the activity you are creating. To change the name of an existing activity. because they include the name of the activity. SIMPROCESS assigns it a default name. Every Activity has several icons that you can choose from. Adding a Comment Use the Comment field to add a brief comment describing the purpose of this activity. point and click on its name. click in the Name field and type the new name. the comment will appear on the status bar. You can name an activity just about anything. If you type in a comment and later print Process Documentation or Model Documentation. the comment will be included in the document. When you create an activity. as long as you do not use the same name twice in the same level of the model hierarchy. With the SimDraw Graphic Editor tool. one that indicates what occurs at this activity. Choosing an Icon The Icon field identifies the graphical icon used to represent the Activity in the model layout. you do not have to enter anything. To select an icon. Also. you can create your own icons or edit the icons included with SIMPROCESS. then click on OK to view the icon. The names of the standard icons differ slightly for each activity. This field is optional. You can import bitmaps and use them as custom icons for your activities. when the activity is selected. 58 SIMPROCESS User’s Manual . It is a good idea to change this to a name that is meaningful to you. This name is shown below the activity icon in the model if you select the Show Name checkbox.

Labeling with Text Blocks The Text Block button opens a dialog box for adding text to the inside of the icon on the layout. Up to three lines of text can be added. SIMPROCESS takes care of file naming for you. When you have entered all the information you want in the Document file. You can specify the text editor by selecting Preferences on the Edit menu. SIMPROCESS uses a text editor such as the Notepad to edit the Document file. SIMPROCESS User’s Manual 59 . which is in the SIMPROCESS Template directory. You can edit this file and customize the template as you wish. The Document file is displayed with a preformatted template which you can fill in: Description: Inputs: Output: Type: (VA/NVA) Owner: _____________________________________________________ Documentation Template The template is defined in a file named Nod. Do not change the name of the file.Using the Palette Bar to Create Activities Documenting the Activity The Document button opens a file in which you can add information describing the activity. save the file before closing the editor. You can print Document text using the SIMPROCESS Print facility.

If this box is not checked. To add descriptive labels to a node icon: 1. Getting Help The Help button displays information about the purpose of the Activity and the fields and buttons on the current dialog box.CHAPTER 2–SIMPROCESS Basics Text Block labels facilitate understanding of the activity or process in relation to the model as a whole. 60 SIMPROCESS User’s Manual . Click on OK. Note: The Text Block is best used with blank box icons. the text you entered is not displayed in the model. Fill in one to three lines of text. 4. Make sure the Show Text Box is checked. Click on Text Block: 2. Icons with a bitmap picture on them will not show the Text Block properly. 3.

or tell SIMPROCESS to produce entities according to a statistical distribution. Generally. season of the year. A Generate activity can generate one type of entity or several different types of entity. depending on how you define the activity. day of the week. Defining a Basic Generate Activity Click on the Entity pull-down arrow to select the type of entity to be generated by this Generate activity. The schedule of generation can be as simple as one constant rate. SIMPROCESS User’s Manual 61 . such as a specified interval of time. You can specify a constant number and rate. the first activity you define in your model is a Generate. or as complex as dozens of different rates depending on the hour of the day.Generate Activity Generate Activity Generate activities create entities for a model during a SIMPROCESS simulation. etc. SIMPROCESS generates entities at the rate you specify when you define the Generate activity.

click on the button to the right of the pull-down arrow.0) Select the distribution. You can enter a specific number or probability distribution in the Quantity field. You can enter a constant value or a statistical distribution.CHAPTER 2–SIMPROCESS Basics If you have not yet defined any entities in your model. Use the Quantity field to specify the number of entities to be generated each time entities are released. Entities are generated at the end of each interval: As an example. you can do so using the New Entity command button on this dialog box. The Interval field defines the time between entity generation events. or make a selection from the Quantity pull-down list. Click on the Interval pull-down arrow and scroll through the list until you find the definition for Exponential distributions. This displays a dialog box for defining the parameters of the distribution: 62 SIMPROCESS User’s Manual . It reads: Exp(10. say that you expect Customer Orders to arrive at an exponential rate. Then. with an average of 20 arrivals per hour.

Minutes. time can be entered as Seconds.Generate Activity You need to set the Mean value to indicate an average entity generation rate of 20 per hour. Assume that Quantity is 1. Depending on which you select from the Time Unit field. Days or Weeks. Hours. you need to generate an entity every 3 minutes. meaning that only one entity is produced at each entity generation event: • To get 20 entities in an hour (60 minutes). The View button displays a graphical representation of the distribution: SIMPROCESS User’s Manual 63 .

You can learn more about statistical distributions and random number streams in Chapter 3–Statistical Modeling Constructs. 64 SIMPROCESS User’s Manual .CHAPTER 2–SIMPROCESS Basics Stream identifies the random number stream used to seed the distribution. beginning on page 85.

e. The Resources button opens a dialog box for specifying the resources required to perform an Activity. and the wait time for any resources. For instructions on defining resource requirements for an activity. Days. or Weeks. Minutes. The cycle time of an entity traversing the model is the sum of the delays it encounters. have two functions: they represent the passage of time during simulation.Delay Activity Delay Activity Delay activities.. This delay time can be expressed as either a constant value or a statistical distribution in units of hours. i. see Chapter 5– Resource Modeling Constructs. Specifying Delay Duration Value represents the amount of time required to perform an activity. beginning on page 135. SIMPROCESS User’s Manual 65 . common building blocks found in most models. and define the resources required to perform a task. plus any hold time for a condition to be met. the time spent at the activities in its path. Time Units determines if the Duration entered is measured as Seconds. Hours.

For example. SIMPROCESS User’s Manual . so that is what we will use here. 3. A Triangular distribution is often used to represent the time required to complete a task.0) Select the distribution. It reads: Tri(0. Scroll through the list until you find the default definition for Triangular distributions. say you define a Delay activity to represent the task of processing an order. you can select a value from a pull-down list. Mode of 30 and a Maximum of 60. you can type the value directly in the field. Alternatively.10. This task takes an average of 30 minutes to perform.CHAPTER 2–SIMPROCESS Basics If you know precisely what you want to specify for the duration of the delay. Click on the arrow to the right of the Value field to display a list of distributions: 2. Click on the box to the right of the Value field.0. or as much as one hour. 1. though it may take as little as 15 minutes.0.5. Fill in the following values: • 66 Minimum of 15.

4. SIMPROCESS User’s Manual 67 .Delay Activity • Select Minutes from the Units field. To learn more about these parameters and the topic of statistical distributions. beginning on page 85. 6. 5. Click on OK to accept the definition. Click on View to see what the curve looks like. see Chapter 3–Statistical Modeling Constructs.

cycle times and counts). set Maximum Entity Count to 1000. say. its entity is sent to a Dispose. when an order is fulfilled. The Dispose marks the end of an entity’s cycle time for the purpose of statistic collection (e. For example. 1000 customer orders are processed.. If this limit is reached. Leaving Maximum Entity Count undefined or setting a value of 0 or “none” indicates that there is no limit. Dispose Activity Properties The Dispose Activity Properties dialog box contains only one unique field: Maximum Entity Count.CHAPTER 2–SIMPROCESS Basics Dispose Activity A Dispose activity disposes of entities when they are no longer needed in the simulation. So if you want to end a simulation after. the simulation ends. You can use this field to set a limit to the number of entities that can be disposed of at the Dispose during a simulation. 68 SIMPROCESS User’s Manual .g.

To define entities: 1. specify: • Entity Name to identify the type of entity you are creating.. An entity instance refers to an individual entity (a single customer order).. SIMPROCESS User’s Manual 69 . and enter Customer Order as the entity Name. you are defining a type. as long as it has not already been used to define an entity elsewhere in your model. 2. from the pull-down menu. When you define entities in SIMPROCESS. When you refer to an entity type. you can refer to a particular type of entity or a particular instance of an entity. Click on Add to define a new entity. SIMPROCESS generates instances of that entity during a simulation run. In the Entity Type Properties dialog box.. Click on Define on the SIMPROCESS menu.g. For this example. and then select Entities.Defining an Entity Defining an Entity In your model. 3. you are referring to all entities of a particular type. e. customer orders. double-click on the default name supplied by SIMPROCESS. Name can be anything you want.

The entity you have just defined is added to the list box in the Entities dialog. When you finish entering the data. • Define Attributes or Expressions For is used in association • Document opens a text file into which you can place extensive comments about the entity and your model. When entities contend for the same resource. you get a list of different icons to choose from. you can create one copy of an attribute or evaluate an expression once for an entity type and have all instances refer to this value. click on OK. if you wish. • Comment is used to enter brief text describing the purpose of this entity. the entity with the highest priority gets precedence. beginning on page 213. The icon appears during simulation if the Animation option is on. If you click on the downward-pointing arrowhead next to the Entity Icon field. 70 SIMPROCESS User’s Manual . • Priority values range from 1 to 100. Alternatively. 4.CHAPTER 2–SIMPROCESS Basics • Entity Icon is the icon which will represent this entity during a simulation run. You can choose to create a new copy of an attribute or evaluate an expression every time an instance of an entity is created. with any attributes defined for this entity. You will learn about attributes and expressions in Chapter 10– Customizing a Model with Attributes and Expressions. This is optional.

If you want to copy the properties of an existing entity (such as the one you just defined). The list may be a lot longer than it first appears. We will use the Batch Shipment entity to liven things up at simulation time. enter a SIMPROCESS User’s Manual 71 . On the Entity Type Properties screen. Then click on OK. Select Truck. Try clicking near the top of the scroll bar to see more list items.Defining an Entity 5. select the entity in the list box and click on the Copy button. Add another entity and name it Shipment. Click on the pulldown arrow next to the Icon field to get a list of entity icons.

72 SIMPROCESS User’s Manual . To remove an existing entity. and then click on OK.CHAPTER 2–SIMPROCESS Basics different Entity Name and make any other changes you want. select the entity and click on the Remove button. click on Close. When you are finished defining entities.

including pre-defined resource types. From the Define pull-down menu. select Resources. For an explanation of the remaining options and commands. the clerks needed to process customer orders. 2. and for more details on defining resources. SIMPROCESS User’s Manual 73 .. 1. Select Add to define a new resource.Defining Resources Defining Resources The next thing we will define in our model are the resources required to process Customer Order entities. we will just define one resource. see Chapter 5–Resource Modeling Constructs.. To keep things simple. beginning on page 135.

and then selecting Edit from the menu bar. Alternative Sub-Processes A Process may consist of a set of alternative sub-processes. This allows you to create many variations of a process and keep them organized in one place.. 74 SIMPROCESS User’s Manual . and then pressing Alt+Enter. To create a Process. followed by Properties. With the Process icon on the layout. Selecting the Process icon. Do this by either: • • Clicking on the Process icon to select it. In this example. and then click on the layout. select the Process button from the Palette bar. we will define a process that indicates how customer orders are handled. display a dialog box for defining the Process. Each subprocess can represent an alternative implementation of the process.CHAPTER 2–SIMPROCESS Basics Defining a Process A SIMPROCESS Process allows you to define processes hierarchically..

Double-click on the Process icon. Adding Detail to a Process Once you’ve defined a Process. and copied using the Copy button. For example. SIMPROCESS defines a single default subprocess when you create a process. an input pad on the left. you may run an experiment with Alternative subprocess 1 active. and an output pad on the right: SIMPROCESS User’s Manual 75 . Processes list The new name you specified appears in the Alternative Suband becomes the sub-process. 4. you can begin to define the activities and processes that make up the Process. Click on OK when you have finished defining the Process. 2. For this example. If you want to rename the subprocess to something more meaningful for your model: 1. To activate a different subprocess. select it from the Alternative Sub-processes list. Then you can switch to Alternative subprocess 2 and compare the results. Click Edit to modify the sub-process definition. Click on OK. Sub-processes can be deleted with the Remove command button. 3. and measure the overall performance of the model. call the sub-process Main. Select it from the Alternative Sub-Processes list on the Process dialog box.Defining a Process Only one subprocess can be active at any point in time. Highlight the existing name and type over it. except for two pads. You can add more sub-processes to the process by clicking on Add and naming the new sub-process. What you see is a blank layout. This opens the layout of the currently active subprocess.

If you neglect to do this. Once the input and output pad are connected by connectors. you can add activities (and processes) to detail the tasks being performed. Within the subprocess. entities flow from level to level. but you do need to connect the input and output pads of the subprocess. entities will have no path to follow across the process node: entities entering the process will never emerge again. 76 SIMPROCESS User’s Manual . NOTE Make sure you connect the Input and Output pads on all Sub-Processes. We will not go into that level of detail here.CHAPTER 2–SIMPROCESS Basics These pads connect any processes and activities (nodes) at this level of the subprocess to the nodes at the next higher level.

in calendar time. 2000.g. 2000. These determine what you see on your screen while the simulation is running.. at midnight. if you want to simulate a month of processing. and an end date of February 1. select Simulate from the SIMPROCESS menu. you can specify: Start: End: 1/1/2000 00:00:00 2/1/2000 00:00:00 This indicates a starting date of January 1. Run Settings To set run time options for a simulation. start and end dates. at midnight.Simulation Setup Simulation Setup There are two steps you need to take before running a simulation: • • Set the run time parameters for the simulation. and then click on Run Settings…: Setting the Start and End Dates The values you choose for the Start and End fields determine how long your simulation runs. The simulation SIMPROCESS User’s Manual 77 . number of times to repeat the simulation. For example. Set animation parameters. e. etc.

you must coordinate those dates with the simulation run dates. the hours. you will see that the year begins on a Saturday. 78 SIMPROCESS User’s Manual . You can also specify unique schedules for each day of the week. Or. If you do not enter a time. For example. we could have omitted the time of day. You can specify different start and end dates for different entity generation events.CHAPTER 2–SIMPROCESS Basics terminates as soon as the clock strikes midnight at the end of January 31. For example. a Generate activity with Start and End dates that fall outside of the simulation Start and End dates will not generate entities during the simulation. So in the example above. minutes and seconds fields default to zero. and time of day. Run Dates and the Real Calendar SIMPROCESS allows you to model varying levels of demand by specifying different entity generation rates in a Generate activity. SIMPROCESS knows what day of the week it is. at any moment in a simulation. NOTE Remember that if you set Start and End dates for objects in your model. as well as the month. It maps the simulation dates to the real calendar. a Resource Downtime with Start and End dates outside of the simulation Start and End dates will not be applied. year. if you look at a calendar for 2000.

Update Dynamic Labels Update Dynamic Labels turns the display of dynamic labels on or off during the animation. Showing entities helps you visualize the workflow. Counts for Generate activities show the number of entities generated. Show Entities Show Entities turns the display of entities on or off during the animation. Show Counts If Show Counts is turned on. Counts for Dispose activities show how many entities have been disposed. each activity or process will display a number above its icon.Simulation Setup Animation Settings Show Clock Turns on or off a clock which displays simulation time while the simulation is running. Animation Speed You can change the Animation Speed to speed up or slow down the SIMPROCESS User’s Manual 79 . Counts for all other activities and processes show how many entities are in that process or activity.

The fastest value is 5000.CHAPTER 2–SIMPROCESS Basics simulation. You may wish to set this to a smaller value while you are debugging your model. and the default is 1000. 80 SIMPROCESS User’s Manual . The smallest value allowed is 1.

the selected Model Parameter will return to its default value. select it in the table.) The next step is to enter the desired value of the Model Parameter in the Current Value field. Asks you if you want to save the latest changes to the model. SIMPROCESS does two things: 1. or select Simulate from the SIMPROCESS menu bar. The Value column shows the current initial value the attribute will have at the start of the simulation run. it issues informational messages and aborts the simulation. The Reset All button. Running a Simulation with Model Parameters If your model has User-defined Attributes which were selected as Model Parameters. If you press Reset. will set the value of all the Model Parameters back to their defaults. The Description of the selected parameter will be displayed below the table along with its default value and the mode of its value (integer. choose Verify Model from the Simulate menu. If you want to check your model for errors before you try to run a simulation. etc. Press the Update button and the new value will entered in the Value column next to the corresponding description. To change the value of a Model Parameter. before running. either click the blue runner icon on the tool bar. when you start the simulation run. If SIMPROCESS finds errors. SIMPROCESS User’s Manual 81 . Before starting the simulation. under the Help button. followed by Run.Running a Simulation Running a Simulation To start the simulation running. The Model Parameters are displayed in a table. you will be prompted to enter initial values for those Model Parameters. 2. Checks your model for errors. real. The column under Description gives you the name of the User-defined Attribute or a descriptive comment.

you can: • • • • • Pause the simulation. Some fields—most notably Duration/Value—can be changed in the middle of the run. The simulation pauses while you reset these options. 82 SIMPROCESS User’s Manual . You can double click on an Activity icon to bring up its properties dialog. Using the Simulate option on the menu bar. Resume simulation after a pause. you can double-click on a Process to view entity movement within the process’ hierarchy.CHAPTER 2–SIMPROCESS Basics Creating Model Parameters from User-defined Attributes is covered in Chapter 10. The simulation will be paused.” beginning on page 213 What You Can Do During a Simulation While a simulation is running. Click on Animation Settings to change animation options. When the dialog is closed and the simulation resumes the new value will take effect. Double-click on any blank area of the model layout to ascend back to a higher level of the model hierarchy. ”Customizing a Model with Attributes and Expressions. Stop the simulation before its scheduled end.

From the Report menu bar. or the Sum of All Replications run. that you want to see performance measures for. use the Browse button to point to its executable. the Average of All Replications run. Excel. press the Display Report button to open the report. i. In the Report list box. Now. Next. SIMPROCESS User’s Manual 83 . select whether you want to view the Standard Report with a text editor (Notepad by default) or with a spreadsheet.” beginning on page 181. you will want to look at the Average of All Replications report. you can display the Standard Report to view output statistics for your model.. ”Output Reports. Replications To view the Standard Report with a spreadsheet.e. choose Display Standard Report.Standard Output Report Standard Output Report After the simulation run has completed. Typically.exe. (if your model ran for multiple replications) you can select which individual Replications. This will open the Standard Report Dialog. For more detail on the Standard Report see Chapter 8.

CHAPTER 2–SIMPROCESS Basics 84 SIMPROCESS User’s Manual .

CHAPTER 3 Statistical Modeling Constructs SIMPROCESS User’s Manual 85 .

Of course. are processed. just having some idea of how things vary is enough. but general behavior. It is very difficult to know how people. deliveries and resources are going to interact in a proposed system. Unfortunately the real world almost never matches the performance predicted by mean-value analysis. you're well on your way to having a statistical model of that clerk. and how they could work. you would not need simulation! You could perform mean-value analysis on your system. 86 SIMPROCESS User’s Manual . machinery. This means that SIMPROCESS models systems by taking the processes that happen in the real world and breaking them down into the key events that occur. Introducing a small amount of randomness through simulation can be all that is needed to transform a simplistic mean-value analysis into a realistic model. If one part goes into a station and one part comes out.CHAPTER 3–Statistical Modeling Constructs Why use a statistical approach? SIMPROCESS lets you analyze your processes using discrete event simulation. SIMPROCESS lets you see how things work. because statistical fluctuations almost always need to be taken into account. then the most important aspect of modeling the station would be to represent the processing time (which. and then move to the next station. In a factory parts move to a station. but it can take as long as 15. You're not looking for exact answers. SIMPROCESS also gives you a picture of flow through your system. You don't need to be an expert in statistics or modeling to use SIMPROCESS. though. If you know that it usually only takes 5 minutes for a clerk to process some paperwork. while still in the planning stage. A statistical distribution is used to give the model the randomness that always occurs in the real world. in the real world. That's a simple way of predicting system performance by looking only at average rates. will vary due to any number of factors) by a statistical distribution. In addition to being able to model processes' statistical nature. Animation gives valuable insight into how things work. if things in the real world never varied.

You can view the seeds available from Seeds on the Define menu bar.Random Number Generation Random Number Generation SIMPROCESS contains one hundred random number streams. The purpose of using different random number streams in your model is to control variance. SIMPROCESS User’s Manual 87 . Please refer to texts on statistics and randomness. including Simulation Modeling and Analysis by Law and Kelton (McGraw-Hill). This is an advanced topic well beyond the scope of this manual. each having a different random number seed.

Choosing the Right Distribution for Your Data For a particular model.” You need to specify the mean and standard deviation. If you would like a bell-shaped curve that is restricted to the inter- 88 SIMPROCESS User’s Manual . The only parameter you need to specify is the mean. Fortunately. The following pages give brief descriptions of the standard distributions. If you are using the Professional version of SIMPROCESS.CHAPTER 3–Statistical Modeling Constructs Standard Distributions SIMPROCESS comes with many standard probability distributions built-in. for it can be shown that if arrivals are Poisson distributed. you should use an exponential distribution. use Stat::Fit to determine the best distribution. simulation results are usually not too strongly dependent on the choice of distributions: a distribution with approximately the right shape should be adequate. The only parameter you need to know is the mean. This generates the familiar “bell-shaped curve. If you are modeling events that are independent. use Stat::Fit. and have experimental data. Stat::Fit uses sophisticated statistical tests to determine the best fit distribution to a set of experimental data. so if you have the data. Use of Stat::Fit is covered in the Stat::Fit documentation. you might use the normal distribution. but you know on average how many will happen. If you are modeling a random process whose value is not too close to zero. then use a Poisson distribution. Here are some guidelines which can help you choose the right distribution. or for any process in which you know the average number that will happen in a time period. If you are concerned with the time between arrivals. the times between arrivals are exponentially distributed. Poisson distributions are good models for arrivals. There is both theoretical and experimental basis for this. it is not always clear which of the standard distributions you should use. You can also create empirical distributions from your own data.

This can be useful as a starting point when you don’t have much data on the process being studied. choose a Beta distribution. see Appendix C. SIMPROCESS User’s Manual 89 . If you have a distribution that is skewed. you have the minimum.Standard Distributions val between 0 and 1. For a more complete listing of the statistical distributions available in SIMPROCESS. This might be the case if you are using a SIMPROCESS Expression to implement the distribution. The simplest distribution to use is a Triangular distribution. the average time and the most time. If you know the least amount of time it takes to perform a task. mean and maximum. you might choose the lognormal distribution. The Weibull and Gamma distributions are useful when you want to be able to widely vary the shape of the distribution by varying the parameters you specify.

select a distribution for modification.. These User Defined Distributions can be used anywhere in the model where a statistical distribution is specified. or Remove User Defined Distributions found in the list box. such as a duration field on an activity dialog. Copy. select Standard. Both are listed on the Define pull-down menu. Tabular…. The first. Choosing the Add or Edit button brings up another dialog box as shown below where you type in the: Name is any unique non-blank user distribution name. Edit. customizes an existing SIMPROCESS distribution. Standard….CHAPTER 3–Statistical Modeling Constructs User Defined Distributions There are two methods for creating User Defined Distributions.. The second.. 2. Use this dialog box to Add. creates a statistical distribution from discrete data points using a table format. User Defined Distributions Procedures 1. Sample 90 SIMPROCESS User’s Manual . Using the Define Distributions pull-down menu.

select Return from the graph’s Option pull-down menu. The graph can be printed to a file. and choose the Remove button. This User Defined Distribution can now be used anywhere in the model where a statistical distribution is specified. Using the Sample text box. If you wish to remove an existing User Distribution. 5. 4. choose OK and the User Distribution you have just defined is added to the list box.. choose the Close button. select the distribution. either change the parameters of the distribution within the parentheses or select the triple dot button. This button opens a dialog box containing the parameter descriptions. If you wish to copy an existing User Distribution. SIMPROCESS User’s Manual 91 . select the distribution. the CDF on the right y-axis. 9. Erlang parameters. 7. 8. To continue. choose the View button from the dialog box shown in Step 3. The PDF is labeled on the left y-axis. To see the PDF (Probability Distribution Function) and CDF (Cumulative Distribution Function) plotted. e.g. Once you are finished entering the data. choose the Copy button and you can enter another Name for the distribution. Once you are finished with the User Distributions.User Defined Distributions 3. 6.

Type continuous 5. If you choose discrete. or Remove Tabular Distributions in the list box. is selected from the list box. 4.. select Tabular. 2. To update the table. SIMPROCESS will interpolate from the Values you specified and the probabilities associated with them. Using the Define Distributions pull-down menu. point and click on the cell you wish to modify. The Value text box under Type will switch between probability and value depending on which column you have clicked on. Choosing the Add or Edit button brings up another dialog box shown below: 3. Copy.CHAPTER 3–Statistical Modeling Constructs Tabular Distributions Tabular Distributions help you create a statistical distribution from a table of discrete data points. 1. Type the number in the text box or in the table cell directly. only the exact values you indicated in the right column will be chosen when the distribution is sampled. Type in the Name as any unique non-blank User Distribution name.. Edit. Use this dialog box to Add. Choose either a discrete or probability distribution function. 92 SIMPROCESS User’s Manual . If you choose continuous.

• • • The first row of the text file should contain an integer whose value is the number of records that follow. an error message appears. This Tabular Distribution can now be used anywhere in the model where a statistical distribution is specified. and choose the Remove button.User Defined Distributions You can add and delete rows by clicking on a cell and then choosing the appropriate button on the right. entries in the selected row will be erased but cells will not be shifted up. select Return from the graph’s Option pull-down menu. select the distribution. choose the View button. the CDF on the right y-axis. Specify both columns in ascending order. P(X ≤ 0) = zero. Value means a random variable value (x) Prob: means the Cumulative Distribution Function. SIMPROCESS User’s Manual 93 . The graph can be printed to a file. If you wish to copy an existing Tabular Distribution. Otherwise. If you choose the Erase Row button. the cell below should always have a larger number than the cell above it. To continue. The Probability of the last cell should always equal 1. If you wish to remove an existing Tabular Distribution. Once you are finished entering the data. Unless specified in the table. choose the Copy button and you can enter another Name for the distribution. • • To see the PDF (Probability Distribution Function) and CDF (Cumulative Distribution Function) plotted. 9. choose OK and the Tabular Distribution you have just defined is added to the list box. 8. Once you are finished with the Tabular Distributions. The row will be added above the one selected. You can also populate a table by importing data from a text file using the Import button. when you try to View. In other words. choose the Close button. 7. 6. CDF = P(X ≤ x). select the distribution. 10.The PDF is labelled on the left y-axis.

Warmup Length If a Warmup Length is entered (in hours) SIMPROCESS will start the collection of statistics for the model run. This allows you to only gather information on your system after it has reached "Steady State". and you have entered values greater than 0 for both the Number of Replication and Warmup Length.CHAPTER 3–Statistical Modeling Constructs Run Settings Simulation Time Here you will enter the calendar date and time for the start and end time of your simulation run. 94 SIMPROCESS User’s Manual . Warmup Every Replication If this option is selected. after the end of the Warmup Length. SIMPROCESS will start collecting statistics after the Warmup Length has expired for each replication. This allows you to average the results and gives you a more accurate picture of “most likely” outcome of your scenario. Number of Replications When your model contains randomness (represented by statistical distributions) you will want to run the model for multiple replications. Reports are gathered for each replication and the Total and Average of all runs.

SIMPROCESS User’s Manual 95 . the animation clock will run approximately 1:1 with real-time. Turning this option on negates that test. the animation will pause between events to show the amount of time between them. In general terms. the faster the animation will run. you will leave this turned off.. If Timescale is set to 0. Timescale Timescale connects the animation with the simulation clock. the reason for running your model for multiple replications is to test how randomness affects your system. This feature is useful if you want the animation to show "bursty" behavior in your model. If 100 is entered here. Cost Periods. Typically. This option allows you to set the frequency over which the ABC Reports will be collected. If Timescale has any value greater than 0. the animation will run at its fastest..Run Settings Reset Random Number Streams This option will reset the Random Number Stream before starting each new replication. You can also set the name of the currency that the ABC Reports will use. from event to event. The smaller the number entered.

CHAPTER 3–Statistical Modeling Constructs 96 SIMPROCESS User’s Manual .

CHAPTER 4 Activity Modeling Constructs The SIMPROCESS activities that were not covered in Chapter 2. This category includes: • • • • • Assemble. Routes entities through different connectors of the model network. can be divided into two categories: Entity Related These activities coordinate groups of Entities. Merge. Routes entities from different connectors onto one connector. into a single entity and releases the entity. The entities emerge as a single unit. Separates a batched entity into its constituent parts (entities). as specified. Stores entities until conditions set by the user are met. Receives two or more entities and assembles them. Unbatch. SIMPROCESS User’s Manual 97 . but retain their individual identity.” beginning on page 49. ”SIMPROCESS Basics. and then releases the entities in one batch. Batch. Branch.

CHAPTER 4–Activity Modeling Constructs • • • • • • • Split. Makes duplicate copies of entities. Releases resources obtained by Get Resource activities. which may be of different types. these activities affect resources. Join. Reunites families of entities that were created in Split activities Transform. from different paths. Adds capacity to consumable resources. 98 SIMPROCESS User’s Manual . Resource related activities are described in Chapter 5–Resource Modeling Constructs. Accumulates entities until a condition is met. not entities: • • • Replenish Resource. and then releases a specified number of them. Get Resource. Assigns values to global entity and model attributes and sets entity priorities. The Entity Related activities are covered in this chapter. Transforms an arriving entity into a different entity type. Gate. Assign. and releases one or more entities of the new type. Coordinates the release of various entities. Obtains a resource and holds on to it across several processes and activities. Resource Related Unlike other SIMPROCESS activities. Synchronize. beginning on page 135. Copy. Free Resource. Divides an entity into parent and child entities that can undergo parallel processing. Entities are not assembled into a single entity.

• • • • • • • Assemble Activity Batch Activity Unbatch Activity Gate Activity Synchronize Activity Split Activity Join Activity SIMPROCESS User’s Manual 99 . The type of coordination to be done is specified at the activity. Entities are queued up in these activities (except for unbatch.Entity Related Activities Entity Related Activities This section deals with activities that are used to coordinate grouping of Entities. This is reported separately from the “Wait for Resource” queueing time which can accumulate at any activity that a resource requirement has been specified for. This queueing time is reported as “Hold for Condition” in the reports. split) until the conditions specified on the activity are met.

and two output pads. that determine Entity behavior. it will immediately leave the Assemble activity through the No Match pad. such as a Customer Order. The Trigger pad is only relevant if Hold for Trigger is selected as one of the activity’s options. 100 SIMPROCESS User’s Manual .” you can use the Assemble activity to model this process. Component and Trigger. Assemble has two input pads. If an entity entering the Component pad is not on the component entity list. arrives. if two approvals and a check are required to form one “approved loan. This way. assembled entities are only released when an entity.CHAPTER 4–Activity Modeling Constructs Assemble Activity The Assemble activity is used to build several entities into a single output entity. The Component pad places incoming entities into a queue until all entities to be assembled have arrived. Out and NoMatch. Entities entering the Trigger pad can trigger the release of the assembled entities. For example.

Duration Where you specify the delay time of the activity. Assembled Entity The entity type to be released after all component entities have entered the activity. Remove: Removes the selected component entity. it will be reflected in the Cycle Time of the Assembled Entity.Assemble Activity Dialog Box Field Definitions Component Entities A list of component entities to be converted to assembled entities. Batch Components: Releases the assembled entity as soon as all component entities are available for assembly. In other words. Hold for Trigger: Holds output entities until an entity enters the Trigger pad. Entities on the list are queued until the specified quantity of each entity type has entered the Assemble activity. The time specified in the Duration will be applied after the activity. A combo box provides a list of defined entity types. Edit: Opens a dialog to modify the component entity definition. • • • • • Add: Opens a dialog to define component entities. SIMPROCESS User’s Manual 101 .

or Weeks. Minutes. Units: Determines if the Duration entered is measured as Seconds. Days.CHAPTER 4–Activity Modeling Constructs • • Value: The amount of time required to perform this activity. Refer to Chapter 5–Resource Modeling Constructs. Use the combo box to select a statistical distribution or enter a constant value directly in this field. 102 SIMPROCESS User’s Manual . beginning on page 135 for information on defining resources. Resources This command button opens a dialog for specifying the set of Resources that are required to perform this activity. Hours.

. The Batch activity is useful. when combining several entities (e. The resultant entity travels throughout the process as a single entity.g. for example.Batch Activity Batch Activity The Batch activity combines several entities into one entity while retaining the identity of the original entities. merchandise ordered by various customers) into a parent entity for transportation. Then after the transportation activities the parent entity can be broken down into the entities that comprised it. Statistics can be collected for the batched entity separately from its constituent members. At some later time it can be disassembled into its constituent entities using an Unbatch activity. SIMPROCESS User’s Manual 103 .

In other words. Maximum Hold Time: The maximum amount of time to hold before a batch which has met the Minimum Quantity requirement is released.CHAPTER 4–Activity Modeling Constructs Dialog Box Field Definitions • • • • Batched Entity: The type of entity that will serve as the container or parent entity. When setting the Duration for a Batch activity. 104 SIMPROCESS User’s Manual . the time specified will be applied after the activity. An entity of this type is created and all other entities become children of the parent. Quantity to Batch: The maximum number of entities that fit in one batch. Minimum Quantity: The minimum number of entities that must be in a batch before it can be released. it will be reflected in the Cycle Time of the Batched Entity.

Unbatch Activity Unbatch Activity An Unbatch activity separates a batch entity into its constituents (children) and then destroys (Disposes) the parent entity. In other words. the time specified in the Duration will be applied before the activity. When you set the Delay time for an Unbatch activity. The Unbatch activity only disaggregates one level of batch at a time. SIMPROCESS User’s Manual 105 . That is. it will be reflected in the Cycle Time of the Assembled Entity. it will be reflected in the Cycle Time of the Batched Entity. In other words. Many levels of batching are possible. The time specified in the Duration will be applied after the activity. batches can be composed of batches.

say that customer orders are printed out and sent on to the shipping department on an hourly basis. is a queue for incoming entities. 106 SIMPROCESS User’s Manual . disposes of incoming entities and causes any entities stored on the Hold pad to be released. located on the lower left of the Gate icon. The second gating policy is called Threshold Release. a trigger entity is sent to the Trigger pad of the Gate Activity. Entities that arrive at that pad are stored here. It then sends a designated number of entities out into the model. and it triggers the release of the number of entities as specified in the Trigger Release Quantity field. The Hold pad. A Gate activity has two pads that determine entity behavior. Gating policies can be effective concurrently. The Gate activity can be used as a buffer or queue to hold material from one section of the model. For example.CHAPTER 4–Activity Modeling Constructs Gate Activity The Gate activity accumulates entities until some number of entities have been received or until a signal is received from another activity to release entities. the Hold pad and the Trigger pad. A Gate activity has two gating policies that can be effective concurrently. in cases where a truck must wait until it is full before it departs. even if it is not full. This policy is useful for example. it is disposed of. It allows the release of some number of entities once a threshold number of entities have arrived. When that condition is met. which is triggered when it receives an entity that is generated hourly by a Generate activity. The first gating policy is called Trigger Release. until a condition is met in another part of the model. so this activity can implement a truck leaving when it is full or on the hour. The Trigger pad. located on the upper left of the Gate icon. This could be reflected in the model by a Gate activity. A Trigger pad can synchronize the flow of entities between different activities. When an entity arrives at a Trigger pad. Entities are not batched in a Gate activity.

LIFO. as well as high and low attribute values are supported. first and last created. SIMPROCESS User’s Manual 107 . This field is only active when Highest or Lowest Attribute Value First is selected in the Ranked As field. is on when the check box is selected. high and low priority. Attribute: The User-defined Attribute type used to rank entities at the gate. Threshold Quantity: The threshold number of entities to accumulate and release when the Threshold Release is checked on.Gate Activity Dialog Box Field Definitions Rank Method: • Ranked As: Determines how the entities in queue will be sorted. FIFO. • Threshold Release: • • On/Off: Threshold Release Enables/disables the Threshold Release feature.

This is used with the Trigger Release policy. Quantity: The number of entities to release when a trigger entity has been received on the Trigger pad. The value can be a constant integer or can be derived from a statistical distribution. 108 SIMPROCESS User’s Manual .CHAPTER 4–Activity Modeling Constructs Trigger Release: • • Release All: Release all the accumulated entities when a trigger entity has been received on the Trigger Pad.

Synchronize Activity

Synchronize Activity
A Synchronize activity coordinates the release of many entities, which may be of various types. You specify the number of input/output pads for a Synchronize activity. Entities arriving at each pad are stored in separate queues. When each queue has at least one entity, each queue releases one entity to its corresponding output pad. For example, a project may require four jobs to be done in parallel, with the work kept in step at various tasks within the process. Before work can proceed on one job, all others must be at the same stage of completion. You can use a Synchronize activity with four pads to model the wait time and release of the parallel tasks.

Dialog Box Field Definitions •
Number of Pads: The number of pairs of input and output Pads required by this activity.

SIMPROCESS User’s Manual

109

CHAPTER 4–Activity Modeling Constructs

Entity Control Activities
This section discusses activities that are used in the control of entities through the process model:

• • • • •

Assign activity Transform activity Branch activity Merge activity Copy activity

110

SIMPROCESS User’s Manual

Assign Activity

Assign Activity
The Assign activity is one method you can use to provide values to globally defined attributes. You can also use Assign to change the priority of an entity. Setting of Attribute values using the Assign activity is covered in Chapter 10, ”Customizing a Model with Attributes and Expressions,” beginning on page 213.

Dialog Box Field Definitions and Buttons •
Set Entity Priority sets or changes the Priority of an entity as it passes through this activity.

SIMPROCESS User’s Manual

111

CHAPTER 4–Activity Modeling Constructs

NOTE
When Entities are contending for Resources, Entities with a higher priority get to use available Resources first. The higher the number, the higher the Entity’s priority.
Set Attributes

lists any existing attribute assignments:

• • •

Use Add… to set values for entity attributes. Use Edit… to modify existing assignments. Select the attribute assignment you want to modify from the Set Attributes list. Use Remove to delete a previously defined assignment.

Resources and Duration, are used as they are in other SIMPROCESS activities.

112

SIMPROCESS User’s Manual

Transform Activity

Transform Activity
The Transform activity changes one type of entity into another type. A single arriving entity can be changed into many output entities (all of the same type.)

Dialog Box Field Definitions and Buttons Output Entities • •
Quantity. The number of new entities to create. This number of entities will be generated for every connector emanating from the activity. Entity Type. The type of entity to be released. You can enter

the name of the entity type or select a type from a pull-down list.

SIMPROCESS User’s Manual

113

CHAPTER 4–Activity Modeling Constructs

If you define a Duration for the activity, the time specified in the Duration will be applied before the activity. In other words, it will be reflected in the Cycle Time of the incoming entities.
Copy Attributes opens a dialog box where you can select the attributes of the arriving entity to be transferred to the new output entity. Examples of attributes you can copy include User Defined Attribute values, creation time, etc. Time Stamps and Entity Priority can also be copied.

Specifying Attributes to Copy
When you select the Copy Attributes command button, the following dialog box appears:

You can select the following options on the Copy Entity Fields and Attributes dialog box:

• •

Copy Creation Time copies the simulation creation time of the original entity to the transformed entities. Copy Time Stamps duplicates the list of predefined timestamps carried by the arriving entity to transformed entities.

114

SIMPROCESS User’s Manual

Transform Activity

Copy Entity Priority duplicates the priority of the arriving entity to transformed entities.

If you do not copy the arriving entity’s Priority, the transformed entity receives the default Priority value defined in the Entity Library. The initial setting is 1. You may also wish to copy User Defined Entity Attribute values associated with the entity. During simulation, different variable types (Integer, Real, Boolean, and String) can be added to an entity. You can copy the User Attribute values using any of the usual list box selection techniques. Once you are finished entering data, click on OK to leave the dialog box, confirming your current selections. The Cancel button cancels the current dialog selections.

SIMPROCESS User’s Manual

115

CHAPTER 4–Activity Modeling Constructs

Branch Activity
A Branch activity routes entities through different paths of the process model. It allows you to model a step in your process where a decision is reached and alternative pathways are selected depending on the decision. In the Branch Activity detail dialog, you select the type of branching criteria to use, such as Probability, Entity Type, and globally defined Attribute value. But you specify the precise criteria on the Connectors associated with the Branch. For example, say the order fulfillment process for new customers requires a step that is not needed for repeat customers, such as creating a customer profile. You might use different entities for new customers and repeat customers and branch on Entity Type. Or you can use a single Customer Order entity and assume that a certain percentage of customers are new and a certain percentage are repeats. In that case, you select Branch Type Probability and then set the probability of each event on the connectors leading from the Branch output pad:

Figure 1. Branching on Probability

116

SIMPROCESS User’s Manual

Branch Activity Dialog Box Field Definitions and Buttons Select Branch Type • Probability tells SIMPROCESS to route entities based on a probability that you specify on each connector leading from the Branch. e. Values can range from 1 to 100. SIMPROCESS User’s Manual 117 . Set the entity type on the Connectors emanating from the Branch. Priority.. Attribute. Enter the entity priority number to branch on. Route entities that have matching User Defined Attributes and value along the appropriate Connector. All probabilities must sum to 1. Route entities based on its type.0 and at least one of the connector’s should have its Otherwise field set to True.g. Entity Type. send Orders • • • one way and Bills another.

beginning on page 135. Refer to Chapter 5–Resource Modeling Constructs. Entities with a higher priority get to use available Resources first. the higher the Entity’s priority. 118 SIMPROCESS User’s Manual . Resources This command button opens a dialog for specifying the set of Resources that are required to perform Branch activity. The higher the number.CHAPTER 4–Activity Modeling Constructs NOTE When Entities are contending for Resources.

g. e.g. SIMPROCESS User’s Manual 119 . see “Connectors and Branch Activities” on page 120 for details. Connector Names The System always assigns a default Connector name. type in a Comment. user defined attributes.Branch Connectors Branch Connectors Connectors link Activities and Processes together and are paths used by Entities to flow through the model. If selected. or click to select the Connector and choose Properties on the Edit pull-down menu. e. and set Branching Parameters using the Branch Connector Properties dialog box. To display the Connector Properties box either: double-click on the Connector. SIMPROCESS will automatically label Connectors emanating from Branch Activities. Connector names can assist in labeling your model. etc. They are objects in their own right with information such as selection probability. the Entity type that can flow across it. change the Line Style. Document your Connector. You can change the Name of the Connector. Conn44.

you will see the corresponding branch in the Connector Properties dialog box. If Show Name is selected. 120 SIMPROCESS User’s Manual . If selected. Connectors and Branch Activities There are additional fields that appear in the Connector detail dialog box depending whether or not the Connector is connecting a Branch Activity to another Activity or Process. If this check box is unselected. determines if Connector names are displayed in the model.CHAPTER 4–Activity Modeling Constructs You should change the Connector name to one that you can identify later. The Auto Label check box applies only to Connectors emanating from Branch Activities. the Name field is displayed on the longest horizontal portion of Bent Connectors. However. the Name is NOT displayed. “Connector Names Using Auto Label.” on page 122 shows the fields used for each Entity Type and provides an example of the label displayed. the Name will be generated by SIMPROCESS. on the Edit pull-down menu. Table 1. To change the Connector Name double-click on the current name in the Name field and type a new one. SIMPROCESS uses entries in the Connector Detail dialog box depending on the Entity Type. Depending on the type of Branch you selected in the Branch Activity Properties dialog box. individual Connector dialog boxes have Show Name check boxes that will override the model default. Displaying Connector Names The Edit Preferences option. use the Branch Connector Properties dialog box to specify the branching parameters. When a Connector emanates from a Branch Activity. Straight Connector labels are displayed across the middle of the Connector. The AutoLabel check box is discussed below.

The higher the number. Priority — Enter the Entity priority number to branch on.0) that the Entity will flow on this Connector. When Entities are contending for Resources.Branch Connectors Entity Type —Select the type of the Entities you wish to flow along this connector from the combo box. this Connector becomes the default branching Connector. Attribute —The first line shows the name and type of the attribute you selected in the Branch Properties box. This means all entities pass through this Connector if none of the criteria in any other Connectors are satisfied. Values are from 1 to 100. the higher the Entity’s priority. you can branch on the equality of numbers. booleans. or branch on ranges of numbers. Entities with a higher priority get to use available Resources first. Probability —Enter the probability (a number between 0 and 1. strings. Otherwise —If you select Otherwise. SIMPROCESS User’s Manual 121 . Using the next two lines.

g.CHAPTER 4–Activity Modeling Constructs TABLE 1. (True or False) Entity Type Type (from Entity type combo box) Otherwise (True or False) Priority Priority (Entity Priority 1-100) Otherwise (True or False) Otherwise 1 Otherwise 122 SIMPROCESS User’s Manual . e. Connector Names Using Auto Label Branch Activity Type Probability Connector Properties Used Probability (between 0 and 1.75 Display Example Otherwise Displays User Defined Attribute Name on Connector with IF or AND conditions.0) Otherwise (True or False) 0. or 4 < My Attr1<7 Otherwise Request for Quote Attribute Branch If Attribute Is (value) Otherwise. My Attr1 = 5.

Merge can be used to TimeStamp all entities or to reduce the number of “to and from” Connectors to create a more visually appealing model. SIMPROCESS User’s Manual 123 .Merge Activity Merge Activity A Merge activity routes entities from different connectors into one connector.

This is useful when two different activities require the same information. In other words. an Order may need to go to Accounting and Manufacturing at the same time. those values can be passed to the Copies by selecting Copy Time Stamps. For example. If you have defined Time Stamps for the incoming Entity. the time specified in the Duration will be applied before the activity. If you define a Duration for the activity.CHAPTER 4–Activity Modeling Constructs Copy Activity The Copy activity generates duplicate entities. Dialog Box Field Definitions • • Number of Copies per Connector is the number of entities that will come out the Copies pad into each connector. • 124 SIMPROCESS User’s Manual . it will be reflected in the Cycle Time of the incoming entities.

Split and Join Activities Split and Join Activities The Split and Join activities work together to temporarily split the processing of an entity among parallel activities. The children and the parent entity are said to belong to the same family. At the Split activity. each of which follows a different path before reuniting at a Join activity. you might divide the work among several clerks at some point: SIMPROCESS User’s Manual 125 . the family is reunited at the Join activity. Split and Join might come into play in the handling of rush orders. To speed up processing of rush orders. an entity is converted into two or more entities. The Split activity generates child entities from the parent entity. In the order fulfillment process. After going their separate ways. where a single entity exits for continued processing.

Each entity goes to a different activity. 126 SIMPROCESS User’s Manual .CHAPTER 4–Activity Modeling Constructs Figure 2. the original and two children. where a different task is performed on the order. a Split activity takes a customer order entity and releases three entities. Rush Order In the figure above.

begin by placing a Split activity and three Delay activities on the SIMPROCESS layout. the lower pad is named Original (if you double-click on the pads.Defining a Split Activity Defining a Split Activity When you add a Split activity to the SIMPROCESS layout. To define the process shown in Figure 2. its icon is displayed with one input pad and two output pads attached: The upper output pad is named Clones. Use the Clones pad to route each of the split entities to their next activities. Open the Split Activity Properties dialog box by double-clicking on the Split icon: SIMPROCESS User’s Manual 127 . Use the Original pad to route the original entity to the next activity in its path. you will see their names in the Pad Detail dialog box). you cannot add a third output pad. but all entities emerge from the same pad. You can release an unlimited number of split entities of different entity types at a Split activity.

The original entity and its children can be identified by their common family name.CHAPTER 4–Activity Modeling Constructs Dialog Box Field Definitions The unique attributes of the Split Activity are: • This names the family of entities you are creating. Identifying Split Entities Split entities are connector attributes: you define a Split entity for each connector linking a Split activity to a connecting activity. 128 SIMPROCESS User’s Manual . Family Name. In this example. Click on OK when you are done. Family Name is used at a Join activity to identify the entities to be joined. You first draw a single connector from the Original output pad to an adjoining activity’s input pad. connect the Split output pad to the other adjoining activities. enter Rush Order for Family Name. Then.

retrieval of an item from inventory. Double-click on one of the connectors emanating from the Split pad: Dialog Box Field Definitions The unique attributes of the Split Connector are: • • Entity Type is the field where you will select the split entity that will flow along this connector. SIMPROCESS User’s Manual 129 . so the original customer order entity flows through Update Database.Defining a Split Activity As an example. The Original pad of the Split activity is connected to the input pad of the Update Database activity. Quantity allows you to specify how many of the split entities will flow along this connector for each original entity that enters the Split activity. and updating of the inventory database. Figure 2 shows the distribution of rush order processing into three simultaneous activities: paper work.

Select the entity that you want to flow along this connector. When total cycle time for customer order entities is calculated at the end of a simulation.CHAPTER 4–Activity Modeling Constructs • Copy Attributes opens a dialog box where you can specify which Global Entity Instance attributes to copy from the original entity to each of the split entities. the two split entities are destroyed at the Join. while the original entity’s cycle is measured from a Generate to a Dispose activity. Click on the Entity Type pull-down box for a list of the entities in your model. those split entities skew the statistics. In the case of Rush Order Processing. while the original entity continues on. if you use a Customer Order entity for each of the paths leading from the Split activity. we do not want to skew the cycle time or entity count statistics for Customer Order entities. consider using a different name for the children. so we define an entity named Temp and use it on the Split connectors. For analysis purposes. and all split entities meet again at the Join activity. Entity Priority and Time Stamps can also be copied from the original entity to each of the split entities. 130 SIMPROCESS User’s Manual . Cycle times for the split entities are measured from generation in the Split activity to termination in the Join activity. For example.

define a different entity type for each Split path. or any other entity statistic. Click on OK when you finish defining the connector. The name will be displayed unless Show Name on the Connector is turned off.Defining a Split Activity Note that using an entity named Temp for split entities is adequate if you are not interested in any simulation statistics of these entities. select the Auto Label option. SIMPROCESS User’s Manual 131 . If you are interested in the number of each split entity generated during a simulation. If you want SIMPROCESS to display the entity name on the connector.

entities that are reunited with their family exit through this pad. Double-click on the Join activity to define its properties: 132 SIMPROCESS User’s Manual . What happens if an entity that is not a member of the Rush Order family enters the Join activity? It will simply pass through the Join activity and exit through the NoMatch pad. The lower pad is named NoMatch.CHAPTER 4–Activity Modeling Constructs Defining a Join Activity Entities released from a Split activity are reunited at a Join activity. The upper output pad is named Joined. Like the Split activity. the Join activity icon has one input pad and two output pads. entities that are not members of the Join family leave through this pad.

If the original entity enters a Dispose activity or is otherwise destroyed before it reaches a Join. SIMPROCESS releases one of the child entities at the Join activity.Defining a Join Activity On the Join Activity Properties dialog box: Family Name identifies the entity family to be joined. Otherwise. SIMPROCESS selects it for you. if the rest of the family is already at the Join activity at the moment the child entity is destroyed. In the Rush Order example. child entities are no longer needed after the Join. Batch Family Members tells SIMPROCESS to batch the child entities with the original entity. SIMPROCESS releases them. SIMPROCESS releases the original entity through the Joined pad. The pull-down list for Family Name contains the names of all families that you have defined in your model. the rest of the family still reunites at the Join. Note that if you delete any child entities before they reach their Join activity. In this example. Rush Order is the family to be joined. SIMPROCESS User’s Manual 133 . You cannot specify which child entity is released in this case. The entity can be separated into its components at an Unbatch activity. all the child entities are disposed of by the Join Activity. By default.

CHAPTER 4–Activity Modeling Constructs 134 SIMPROCESS User’s Manual .

People. The limited availability of resources is an important constraining factor in business processes. Simulation is a very effective tool for identifying resource bottlenecks. See Chapter 7. the loan officer. money. In addition.” beginning on page 163 for more details. vehicles. SIMPROCESS provides the means for modeling resources and for measuring the impact they have on the performance of a business process. equipment. and the surface mounting tools are resources whose availability affects the activity. In these examples. a bank customer requires the help of a loan officer in order to submit a loan application. The unavailability of critical resources creates bottlenecks in a business process. ”Activity-Based Costing. On a manufacturing line. variable and fixed costs associated with resources may be used to measure process costs and activity costs. SIMPROCESS User’s Manual 135 . a computer board cannot be populated with chips unless both an operator and a surface mounting tool are available. the operator. and space can be modeled as resources. For example.CHAPTER 5 Resource Modeling Constructs A resource is an agent that is required to perform the tasks associated with an activity.

First. Define groups of resources for complex resource requirements. we will begin by describing how SIMPROCESS allocates resources during a simulation. though.CHAPTER 5–Resource Modeling Constructs This chapter describes how to: • • • • Define resources. and Replenish Resource. Define the resource requirements of activities. 136 SIMPROCESS User’s Manual . Free Resource. Use resource related activities such as: Get Resource.

first-served basis. This state is defined as "Wait for Resource" in the SIMPROCESS output reports. Priority is an entity attribute assigned when the entity is defined. Once an activity gains control of a resource. If an activity requires two resources and only one is available. Resource Allocation Policy During simulation. that resource is unavailable to any other activity that requests it. If resources are required. All entities with the same priority are treated on a first-come. SIMPROCESS may or may not obtain the resource that is available. SIMPROCESS attempts to satisfy resource requirements in the order of the priority of Entities queued for the resource. The activity retains control of the resource until it finishes processing the entity.Resources and Simulation Resources and Simulation When an entity arrives at an activity. many activities may simultaneously contend for the same resource. If a required resource is not available when an entity arrives at an activity. the entity waits for that resource in a queue. SIMPROCESS User’s Manual 137 . SIMPROCESS attempts to obtain them. It depends on the rules you have defined for your model. SIMPROCESS checks to see if any resources are required to process it. Any resource an activity holds is unavailable to other activities.

In the following discussion. select Resources.. Type specifies the resource template that will be used to create a new resource definition. Remove. copy resource definitions. deletes a resource definition. or delete resources: The Add function creates a new resource definition. From the Resources dialog box you can define new resources. and Copy functions are only active if there are existing resource definitions. to define resources in a model. trucks to deliver merchandise. The Edit. Remove Copy creates a new resource based on the definition of an existing one.CHAPTER 5–Resource Modeling Constructs Defining Resources Use the Resource option from the Define pull-down menu. On the Define pull-down menu. These functions operate on the resource selected in the list box: Edit modifies an existing resource definition. we will use as examples resources for an order distribution process: salesclerks to process the orders. 1. 138 SIMPROCESS User’s Manual . modify existing resource definitions. and fuel to power the trucks..

Available 24 hours a day. with no Downtime scheduled. • Night Shift . see Chapter 9– Reusable Templates and Libraries. except with a Downtime schedule that has the Day Shift Resource only available from 8 am to 5 pm. For more information on Resource Templates. see Chapter 11–More Advanced Model Building. Monday through Friday. Standard Shift . When you push the Add button. Monday through Friday. You can choose any one of the three when you define a new Resource from the Type field at the top of the Resources list box. This topic begins on page 199. Click on Add to define a new resource: SIMPROCESS User’s Manual 139 . This topic begins on page 263. For more information on Resource Downtime.Default Resource. Also down for one hour from 12 noon to 1 pm. 2. every day.Defining Resources SIMPROCESS comes with three Resource types defined. a new Resource with the characteristics of the Type you selected will be created. except with a Downtime schedule that has the Night Shift Resource only available from 11 pm to 8 am. Also down for one hour from 3am to 4 am. The three types of Resources are characterized by their Downtime Schedules as follows: • • Resource .Same as the Resource.Same as the Resource.

you can define a non-integer value for Units (e. You can define that person as a separate resource.. should not be used in the Name of a resource. but you should change this to something meaningful. named Diplomatic Clerk. assume that there are five clerks on the staff. beginning on page 213. or a User-defined Attribute.g.5. Then specify 4 Units for the interchangeable Clerks resource. Enter the number 5 in the Units field. For human resources such as 140 SIMPROCESS User’s Manual . This is the clerk you want to handle customer complaints. define those clerks as separate resources. For instance. NOTE Special characters. If you check off this box. 10. This may cause SIMPROCESS to not collect statistics for the ABC Reports. see Chapter 10– Customizing a Model with Attributes and Expressions. It also means that an activity can acquire a fractional part of the resource. Then number of Units of a Resource can also be specified with a single line Expression. If any clerks on the staff have unique capabilities. such as "/". Units identifies how much of the resource is available. 2. In this example. Defining all clerks as a single resource implies that the clerks are interchangeable: each clerk can perform the same tasks as any other clerk. and name the resource Clerks. A default name is provided. For this example.CHAPTER 5–Resource Modeling Constructs On the Resource dialog box: Name is any unique name identifying the resource.2). or "-". Fractional Usage indicates whether or not you can allocate fractional units of the resource. say one of your five clerks is particularly adept at handling irate customers. "+". Whether or not to allow fractional usage depends on how the resource is used in your model. For more information on these topics. with 1 Unit. define the sales clerk staff.

leave the Fractional Usage box blank. those 50 gallons are gone. Consumable indicates whether a resource loses a portion of its units when it is allocated to an activity. to store descriptive text about the resource. Comment is a brief sentence about the resource. beginning on page 213. This topic begins on page 199. Some activity requires 50 gallons of fuel. Expressions provide you with the means of writing your own specialized processing instructions. expressions include processing of attributes. Fuel and money are examples of consumable resources. allow fractional capacity if clerks can work on more than one task at a time. The Downtime command lets you define the periods when the resource will not be available in the model. with a capacity of 1000 gallons. Attributes are customized variables you define for a resource. These topics are discussed in depth in Chapter 10–Customizing a Model with Attributes and Expressions. Clerks are reusable. The Add Template command lets you save the resource you have defined for re-use. Typically. Once the activity uses 50 gallons of fuel. SIMPROCESS User’s Manual 141 .Defining Resources Clerks. so do not check Consumable. This field is optional. Resource downtimes are described in Chapter 11–More Advanced Model Building. Say you define a Fuel resource. If you assume that a clerk can only attend to one task at a time. This topic begins on page 263. beginning on page 163. This function is described in detail in Chapter 7– Activity-Based Costing. The Document function is used the same way it is for Activities. You can use the Replenish Resource activity to add units to consumable resources during a simulation. Resource templates are discussed in in Chapter 9–Reusable Templates and Libraries. The Cost function allows you to assign cost values to resources and keep track of the expense involved in using resources.

a part-time lawyer.CHAPTER 5–Resource Modeling Constructs Defining Resource Requirements for Activities Most processing tasks require one or more resources. one set of resources may be interchangeable with another set. and a part-time clerk. In some situations. start by doubleclicking on the activity’s icon to display the Activity Properties dialog box. For example. On the dialog box. For example. with some resources used at less than their maximum capacity. To define the resource requirements for the activity. In this case. completing an application for a patent claim may require a full-time researcher. and diesel fuel to power the truck. This activity requires a truck to transport the merchandise. click on the Resources button: 142 SIMPROCESS User’s Manual . the activity needs more than one resource. shipping furniture from a factory to a warehouse may require either three medium-size trucks or two large trailers.

Remove deletes the requirement highlighted in the Requirements box. Use Edit to modify an existing requirement definition. Any existing requirements will be listed under the Requirements heading. you can specify the combination of these resources in the Requires radio box. Once you have chosen a list of resources for the activity. Resource requirements can be variable by using Userdefined Attributes. SIMPROCESS User’s Manual 143 .Defining Resource Requirements for Activities On the Resource Usage dialog box: Add Resource adds an individual resource requirement for the activity. and then press Edit. Highlight the requirement you want to modify. See “Variable Resource Usage” on page 232. Requires defines the combination of resources required to perform this activity: Any One Member • — any one of the resources listed is sufficient to perform the task.

An entity arrives at activity A. Enter the value of number in the box. For example. • • Reserve As Available — all listed resources are required and will be reserved as they become available. 144 SIMPROCESS User’s Manual . Now an entity with higher priority arrives at Activity B.CHAPTER 5–Resource Modeling Constructs • All Members — all members in the Requirements list are needed in order for this activity to process an entity. A deadlock develops since neither activity will release the reserved resource. Then resource 2 becomes available. using Reserve As Available logic. Activity B waits for resources 1 and 2. so we are not going to edit its Usage Rate. say activities A and B are both defined as requiring resources 1 & 2. so A waits for it. Select Truck from the pull-down list and click on the Add Resource button to add one Truck to the Requirements list. Reserve As Available may pose a risk of deadlock. Any __ Members — Any number or members of the list are needed to process an entity. make sure this situation cannot develop. In this case we only need a single truck. SIMPROCESS does not obtain any member until all the required resources are available. Although Activity A has been waiting for Resource 2 longer than Activity B has. click on the down arrow of the combo box next to the Add Resource button to display the list of available resources. B gets the resource because the entity it is processing has a higher priority than Activity A’s entity. If you decide to use Reserve As Available logic. which obtains resource 1. Defining Individual Resource Requirements On the Resource Usage dialog box. Resource 2 is not available.

Defining Resource Requirements for Activities Repeat the same steps for Diesel Fuel. For this activity. but edit its Usage Rate once it has been added to the Requirements list. SIMPROCESS User’s Manual 145 . and fuel to power the truck. we need to define two resource requirements: a truck. Specify a Usage Rate of 100.

the activity releases the entity and frees the resources. allocation of resources is handled by SIMPROCESS according to the requirements and priorities you have defined. and then releases the resources when it finishes processing the entity. clerk is defined as a resource. Tasks Handled by the Same Clerk This processing is performed by a clerk. if a resource is listed in the resource requirements list for the activity. SIMPROCESS attempts to obtain the resource required to process the entity. In a SIMPROCESS simulation.CHAPTER 5–Resource Modeling Constructs Explicitly Getting and Freeing Resources During a simulation. When an entity arrives at an activity. In the model. you want to hold on to a resource over the course of several activities or processes. and each activity is defined as requiring a clerk. If the required resource or resources are not available. the entity waits until the resources become available. For example. When processing is completed. So it is possible that 146 SIMPROCESS User’s Manual .This is an implicit way to get and free a resource. Sometimes. each activity obtains the specified quantity of resources when it receives an entity. Figure 3 represents some of the steps performed in a mail order fulfillment process when a customer order is received: Figure 3.

SIMPROCESS User’s Manual 147 . Figure 5 is an example of explicitly obtaining a resource. some other activity in the model could grab the clerk and delay this entity’s processing. and a Free Resource activity to free the resource when it is no longer needed. one clerk actually takes the order from the customer and handles it through much of the distribution process. Order Distribution Process Overview To model this in SIMPROCESS. Figure 4. use a Get Resource activity to obtain the resource. In the real world. for example.Explicitly Getting and Freeing Resources between Identify Customer and Create Customer Profile.

Here is the process shown in Figure 3 on page 146 with a Get Resource activity added: 148 SIMPROCESS User’s Manual . Be sure to assign a unique Tag to each Get Resource activity. In the Get Resource Activity Properties dialog box. Fill out the Resources Usage dialog box as specified in “Defining Resource Requirements for Activities” on page 142. it can lead to confusion when it comes time to release allocated resources. Although it is possible to use the same Tag twice at different levels of the model hierarchy.CHAPTER 5–Resource Modeling Constructs Get Resource Activity Use the Get Resource activity to obtain a resource and hold on to it across multiple processes and activities. click on Resources to specify the resources to be allocated.

Create Customer Profile and Access Customer Profile activities. You account for this resource requirement in the Get Resource activity. you need a clerk to process the entity in the Identify Customer. This means that you do not define the same resource requirement in those activities as well. the last task handled by a clerk is arranging for payment of the ordered merchandise. SIMPROCESS User’s Manual 149 . In the order distribution model represented by Figure 4 on page 147. Do not define the same requirement in the Properties dialog box of each activity.Explicitly Getting and Freeing Resources Keep in mind that you are using Get Resource to obtain resources that you would otherwise obtain in each of the ensuing activities. When that process is complete. Free Resource Activity Use the Free Resource activity to free resources obtained at a Get Resource activity. the order is passed to the shipping department to be filled. For example.

150 SIMPROCESS User’s Manual . Double-click on the activity to view its properties dialog box: You can free all resources that have been allocated for this entity by clicking on the Release all Allocated Resources box. Often.CHAPTER 5–Resource Modeling Constructs Figure 5. you will want to specify exactly which resources are to be released. Processing Payment for an Order Add a Free Resource activity after the activity labeled Create Bill. though.

Tag indicates the Get Resource activities whose resources will be released. The pull-down list for this field lists all the Get Resource activities’ tags in your model.Explicitly Getting and Freeing Resources To define the set of resources to be freed. The Tag and Resource fields work together in defining free resource actions: 1. in which case SIMPROCESS may free resources obtained in any activity the entity has visited. You can select a tag from the listbox. SIMPROCESS User’s Manual 151 . Assign a Name to the action you are defining. click on the Add button in the Free Resource Activity Properties dialog box. This name will be displayed in the List of actions field of the Release Activity Properties dialog box when you finish defining the action. or specify any tag!.

If you want to release more than one resource. Click on OK to accept your definition. highlight it in the listbox and click on Edit.CHAPTER 5–Resource Modeling Constructs If you want to free resources allocated at two or more activities. since it was not used. you define a Get Resource activity that obtains 50 gallons of Diesel Fuel in anticipation of shipping merchandise to a customer. 2. one branch of the path leads to a Free Resource activity where the consumable resource is not consumed. To modify the definition for an action item. Resources are only freed if they were obtained in the activities you specified in the Tag field. 152 SIMPROCESS User’s Manual . Click on the Consumable resources will be consumed check box in order to decrement consumable resources. To remove the action. Before reaching the shipping activity. click on Remove. 3. For example. SIMPROCESS provides you with the option of whether or not to deduct the amount acquired from consumable resources when those resources are freed. but not all the listed resources. you need to define a separate free action for each activity. but not all of the listed activities. create a separate action for each resource. In this situation. The other path continues on to the shipping activity. You can add additional actions to the list by clicking on Add and defining the action. and then to a Free Resource activity in which the fuel resource is consumed. The action now appears in the List of Actions schedule. Use the Resource pull-down list to specify the resource you are freeing. the entity enters a branch node in which the merchandise order is canceled. or select all resource! to free all resources allocated for the entity.

To reflect this in a model. define a Replenish Resource activity to add units to the diesel fuel resource. fuel is delivered to the truck depot by a fuel distributor. Every morning. you define both a truck and some quantity of diesel fuel as resource requirements. For example. diesel fuel powers the trucks your company uses to ship merchandise.Replenishing Consumable Resources Replenishing Consumable Resources Use the Replenish Resource activity to replenish a consumable resource during a simulation. When you define the activity in which merchandise is shipped to customers. Double-click on the Replenish Resource icon to define the resource you are replenishing: SIMPROCESS User’s Manual 153 .

Replenish Resource activity. The pull-down list shows all the resources defined in the model. Specifying 154 SIMPROCESS User’s Manual . Diesel Fuel is the resource we want to replenish.CHAPTER 5–Resource Modeling Constructs On the Replenish Resource Activity Properties dialog box. Note that only consumable resources can be allocated in a a non-consumable resource results in an error message. In this example. click on Add to define a replenish action: The Resource field identifies the resource to be replenished.

The distribution can be selected from the pull-down list of the Units field. You can specify either a real number or a statistical distribution.Replenishing Consumable Resources Units indicates the amount of the resource to be added. the resource definition appears on the list of Replenishment Actions. the number 1000. • The Replenish to Capacity box indicates that a resource should be replenished up to the value specified in its Units field when the resource was defined. After you press OK. SIMPROCESS User’s Manual 155 .0 was entered. In this example.

CHAPTER 5–Resource Modeling Constructs 156 SIMPROCESS User’s Manual .

CHAPTER 6 Graphical Modeling Constructs SIMPROCESS User’s Manual 157 .

CHAPTER 6–Graphical Modeling Constructs Background Text There are two types of background text in SIMPROCESS: static text and dynamic labels. Below the Static Label field. They are covered in Chapter 10–Customizing a Model with Attributes and Expressions. The dialog is invoked by selecting a text tool from the palette (marked by a capital T) and clicking on the background in the location where text is to be placed. the bottom group — Font Attributes — is used to specify properties of both kinds of text. Static text is used for annotating the model layout and does not change during simulation. This topic begins on page 213. Text can be moved afterwards by clicking and dragging just like any icon. are updated during simulation and are used to display information about changing properties of model elements. as their name implies. Dynamic labels. the dialog is divided into two sections: the top group of controls. designated as Dynamic Label Properties is only applicable to dynamic text. Dynamic labels are an advanced feature found in SIMPROCESS Professional. Properties of both kinds of text are specified in the Background Text dialog. 158 SIMPROCESS User’s Manual .

which means they can be scaled on the layout by dragging the handles that appear on the selection box around the text. SIMPROCESS system fonts are vector fonts. Native font properties are specified in an operating system’s Fonts dialog. For native fonts. Align and V. SIMPROCESS User’s Manual 159 . but you can still set the color and angle of the text. only 90 degree rotations of the text are allowed. edit its properties and group it with other objects on the layout. Note that once the text is placed on the layout. In order to choose a native font. the selection box around it has no handles.Background Text SIMPROCESS provides two types of fonts: native and system. Native fonts are supplied by the operating system on which you are running. Note that vector fonts can be rotated by all angles defined in the combo box. For example. style and point size. you can specify text color and angle in the Background Text dialog. but you cannot resize the text by dragging its selection box. select Native in the Font combo box and click on the Set… button. The only way to resize native font text is to change its point size in the Fonts dialog. Vector fonts are created by choosing anything other than Native in the Font combo box. Align combo boxes. in Microsoft Windows you can choose font name. Once the font is chosen and the Fonts dialog is closed. The preview of the text will appear in the Sample box to help you quickly choose the desired attributes. You can move the text. The Set… button will become disabled. Several text labels can be grouped together on the layout and their horizontal and vertical alignment can be set in the H.

any other SIMPROCESS constructs you place on the Background Graphic will be hidden behind it. or navigate a model hierarchy. Locked and On Top. Activities and Connectors that you place on the screen will appear on top of the Background Graphic. Once the graphic is on the layout. select the Background Graphic icon from the palette and move it to the layout. This will prevent you from inadvertently moving the Background Graphic when you are intending to edit some other SIMPROCESS construct. In other words. Turning the On Top option on. Typically this option is left off. Turning the Locked option on locks the Background Graphic to its current position on the layout. 160 SIMPROCESS User’s Manual . it can be resized the same as any other icon on the SIMPROCESS layout. Select the icon you wish to use and select OK to close the dialog.CHAPTER 6–Graphical Modeling Constructs Background Graphics To place a background graphic on the model layout. When you edit the properties of the Background Graphic. so that the Process. you find two options on the properties dialog. The Select background dialog will open. brings the Background Graphic to the front of the layout display.

and your icon will be displayed. when you open the properties dialog of that type of construct. Bitmap dialog From the File menu. select the Browse button. If the bitmap file was imported for use as an entity icon. Select OK to import the bitmap file for use in SIMPROCESS. Select the icon name from the list. SIMPROCESS will look for the bitmap file in the SIMPROCESS working directory (by default. As SIMPROCESS User’s Manual 161 . SIMPROCESS will fill in the Icon Name field with the name of the bitmap file. entities or background that the graphic will be used for. or as an icon representing an Entity. Activity. This will open the Import box. activities. the icon name will be in the list of the Icon field. From the Type field.Importing Bitmap Graphics Importing Bitmap Graphics You can import a bitmap graphic into SIMPROCESS for a number of different uses on the layout of your model. the C:\SPUSER directory). or Background Graphic. If your bitmap file is not stored there. or you can type in any name you wish. the process of importing a bitmap is the same. A bitmap can be used as a Background Graphic. The icon can be resized in the same manner as any SIMPROCESS icon. select Import Bitmap File. choose which SIMPROCESS construct: processes. If you imported the bitmap file for use as a Process. it will be on the list for the Icon field in the Entity Type Properties dialog box. as an icon representing a Process or Activity. select the OK button to close the properties dialog. This will allow you to direct SIMPROCESS to the location of your bitmap file. Regardless of which you wish to use the bitmap for.

162 SIMPROCESS User’s Manual .CHAPTER 6–Graphical Modeling Constructs with other SIMPROCESS entity icons. C:\SPUSER\SG2LIBS). Do not delete this bitmap file as SIMPROCESS will refer to it whenever the graphic is used. Note When you import a bitmap graphic into SIMPROCESS. a copy of the bitmap file is placed by SIMPROCESS in the SG2LIBS directory under the SIMPROCESS working directory (by default. you will not be able to resize the graphic once you have imported it.

CHAPTER 7 Activity-Based Costing SIMPROCESS User’s Manual 163 .

If you are not familiar with ABC. 164 SIMPROCESS User’s Manual .CHAPTER 7–Activity-Based Costing Introduction to Activity-Based Costing The purpose of this introduction to Activity-Based Costing is to summarize the basic principles of ABC and describe the benefits of the integration provided with SIMPROCESS. a list of references is provided in the back of the chapter for further reading.

The closer you can come to relating the costs to their causes. the performance information provided is incomplete or misleading. If cost dynamics are not modeled (which is usually the case with traditional management accounting information systems). and the relationship between activities and costs. the more helpful your accounting information will be in guiding the management decisions of your business. SIMPROCESS User’s Manual 165 .Why ABC? Why ABC? The goal of ABC is to mimic the causal relationships among resources. 1992). “The fundamental belief behind this costing approach is that cost is caused and causes of cost can be managed. activities. The key to understanding cost dynamics in any enterprise is modeling the relationship between activities and their causes.” states the Ernst & Young Guide to Total Cost Management (Ernst & Young. Resources perform activities to add value to products and services. Enterprises use resources to conduct activities. and entities in assigning overhead costs.

The second phase is referred to as activity based object costing. product. 166 SIMPROCESS User’s Manual . Activity Based Costing occurs in two phases. the costs of significant activities are determined. services or other cost objects. the amounts in the cost pools are assigned to products. In other words. cost data is organized into activity cost pools. service.CHAPTER 7–Activity-Based Costing What is ABC? Activity Based Costing is a technique for accumulating cost for a given cost object (i. This first phase is sometimes referred to as activity based process costing. First. Then.e. customer) that represents the total and true economic resources required or consumed by the object.

The modeling approach in SIMPROCESS manifests this concept. The hierarchical modeling approach of SIMPROCESS facilitates this organization and accommodates varying levels of detail for ABC analysis. The organization of business processes is critical to reorganizing the cost data into activity pools. and builds on it by organizing and analyzing cost information on an activity basis. ABC embodies the concept that a business is a series of interrelated processes. the cost statistics provided by SIMPROCESS are far more accurate than results obtained from static analysis. The building blocks of SIMPROCESS are processes. and entities. Another significant value of the ABC analysis in SIMPROCESS comes from the dynamic analysis of costs based on the event-driven simulation.How Does SIMPROCESS Implement ABC? How Does SIMPROCESS Implement ABC? The architecture of SIMPROCESS provides an integrating framework for ABC. and that these processes consist of activities that convert inputs to outputs. SIMPROCESS User’s Manual 167 . One of the major challenges in successful implementation of ABC is finding the appropriate level of detail for the business process analysis. bridge ABC and dynamic process analysis. resources. Because SIMPROCESS keeps track of resource interdependencies and captures the random nature of processes.

understanding when the total investment in product development can be recouped is valuable information for strategic pricing. That is. understanding the cost of poor quality can justify the investment in a quality program. Evaluation of Capital Investments Reengineering business processes requires a trade-off between the benefits and costs of making process improvement changes.CHAPTER 7–Activity-Based Costing Benefits of ABC with SIMPROCESS Focus on Cost Drivers One of the most important benefits of ABC is the focus it provides for estimating the key causes of costs. Executives can use these estimates to prioritize and monitor improvement efforts. understanding the cost of complex or diverse products and services can help streamline the product and service offerings. Without the trade-off. Strategic Pricing Life cycles of product and services are becoming shorter and shorter. and marketing are not recouped until revenue is generated. 168 SIMPROCESS User’s Manual . executives and managers are faced with making large investment decisions based on gut feel. ABC with SIMPROCESS allows simulation of the process changes during the life cycle of a product/service for strategic or timebased pricing. testing. The up-front costs of developing. Understanding the cost trade-off between life cycle stages is critical to strategically pricing the products. Likewise. For example.

SIMPROCESS will distribute these costs to activities and to entities as the simulation proceeds and provide extensive reporting of the results based on user specified cost reporting periods. SIMPROCESS User’s Manual 169 . SIMPROCESS differentiates between fixed costs and several types of variable costs that can be assigned to a resource. you may define the cost periods for cost calculation purposes or accept SIMPROCESS' default cost periods. Prior to running a simulation. capital equipment depreciation. SIMPROCESS' costing facility is very simple to use. The following describes how to complete these two steps. You must also define costs for at least some of the resources in your model.). SIMPROCESS allows multiple cost periods to be analyzed simultaneously and allows model level definition of costing periods.How to Use ABC in SIMPROCESS How to Use ABC in SIMPROCESS To get process cost information from a SIMPROCESS model. salaries. which are based on calendar quarters (3 months each). presumably those that represent the most significant costs in your business process (hourly payroll. you need first to define the costs of the model's resources and the cost periods to be analyzed. etc. provide an effective communication vehicle for the participants in a process reengineering project and make SIMPROCESS a complete business process analysis tool. These features help to bridge the gap between an accountant's view and a manager's view of a business process. In order to provide you with a comprehensive cost analysis.

170 SIMPROCESS User’s Manual . Then. monthly.CHAPTER 7–Activity-Based Costing Setting Up Cost Periods You should pick the cost periods that are most suitable for the system under study. the simulation start date is 1/1/96 at 00:00:00 (12:00 o'clock midnight) and the end date 1/1/97 at 00:00:00. click on the Cost Periods button. half yearly. select Simulation/Run Settings from the main menu. let us assume that you have a simulation that will run for one year. That is. For example. too. Let us further suppose that you wish the simulation to generate cost reports for each calendar quarter during the simulated year 1996. SIMPROCESS selects quarterly cost periods as the default but allows weekly. To define Cost Periods. This will display the Cost Periods definition dialog as shown below. and yearly cost periods.

Fall.. Click the down arrow button to see all of the Period Frequencies that SIMPROCESS offers: Weekly. You can change the name of each cost period to be more descriptive in the context of your cost report. If you select a particular cost period and click the View. pounds. Half Yearly. Quarter2. is the Period Frequency selection list with the default Quarterly selected. lire.).. Notice also that SIMPROCESS will automatically create and name enough cost periods to span the currently specified run length. Summer. Monthly. . deutschemarks. and Quarter4. SIMPROCESS provides no currency conversion facilities and assumes that all cost amounts are in the same currency (dollars.Setting Up Cost Periods The list in the upper left of this dialog shows the currently defined cost periods. Quarter2.). SIMPROCESS will display the Cost Period detail dialog which shows the start and end dates and times for the cost period and the name of the period. Click the OK button to alter the cost period name or the Cancel button to discard your changes. you may wish the cost periods to be called Spring. Quarter3.. At the bottom of the dialog. Notice that if you select a new Period Frequency. and Winter rather than Quarter1. This is a simple label used in the reports. For example. SIMPROCESS User’s Manual 171 . . Quarterly... Week2. SIMPROCESS will create a new set of periods in the period list and assign each a default name (Week1. etc. or Quarter1.) This dialog also allows you to set the name of the Currency used on the cost reports. (The simulation Start Time and End Time are set from the Simulate/Run Parameters option on the menu bar. button. and Yearly.. The default periods are Quarter1. Quarter2. etc..

It looks like the following: 172 SIMPROCESS User’s Manual . first select the Define/ Resource option from the menu bar.CHAPTER 7–Activity-Based Costing Setting Up Resource Costs SIMPROCESS allows you to specify the costs of each resource in the model. You can specify both fixed and variable costs for non-consumable resources and variable costs for consumable resources. button to display the Resource Costs dialog for this resource... SIMPROCESS will generate cost reports only for those resources that have costs specified. These costs are specified as part of defining each resource. Then pick a previously defined resource from the list for editing or add a new one using the Edit or Add buttons. You do not have to specify costs for all resources. To see the Resource Costs definition dialog. This will display the Resource Properties dialog as shown below: Click the Cost.

Otherwise. It is important that you leave this checked on. It is used to represent "flat fee" type charging schemes.Setting Up Resource Costs The box at the top of this dialog shows the Variable Costs and the box below shows the Fixed Costs. is turned on by default whenever cost information is entered. Example: Often administrative charges or service call charges are based on this kind of charging scheme. Collect cost statistics. The cost is not calculated based on the time that the activity takes to complete. cost statistics used in the ABC Reports will not be gathered. Cost Per Unit This cost is applied to each entity that is processed based only on the amount of the resource's capacity that is used to process the entity. Example: Fuel may be defined as a consumable resource SIMPROCESS User’s Manual 173 . Variable Cost Three types of variable costs can be specified for non-consumable resources: Usage Cost per Entity This cost is applied to each entity that is processed by the resource. The check box at the bottom left-hand corner of the dialog. The same cost is assigned regardless of the amount of the resource's units that is used or the duration of the activity.

it will cost 1. You should enter 50000 in the Per Unit box and select Yearly from the list on the right. Machine depreciation or fixed salaries are common examples of this type of cost. 174 SIMPROCESS User’s Manual . Fixed Costs are defined in the box below the Variable Costs box. For example. SIMPROCESS allows you to specify that fixed costs be fully absorbed for the cost period (absorption costing) or that the idle time costs be kept out of the reported costs (capacity costing). After a simulation is completed.50 dollars per gallon. You can see the items on the list by clicking the down arrow to the right of the list. By choosing Display ABC Reports from the Reports menu.00 per year. Let's assume that you want to specify the fully burdened cost of a set of salaried employees which are represented by this resource and the cost per employee is $50.CHAPTER 7–Activity-Based Costing and cost per unit may be 1. You will notice that the list contains the same time intervals that are available for the Cost Period Frequency. Example: Machine rental charges or hourly salary paid to employees are a common example of this type of cost. Hourly Cost per Unit This cost is calculated based on the amount of resource capacity used and the time used. These do not have to be the same in both places.50 dollars. SIMPROCESS will perform all the necessary conversions automatically.000. SIMPROCESS will convert the annual salary costs to weekly costs when generating your cost data. Fixed Costs You enter the fixed cost amount in the Per Unit value box and select the time basis for the cost from the selection list to the right. you can see reports of the costs. Every time a gallon of fuel is consumed. you can specify annual salaries and run a simulation for weekly cost periods.

SIMPROCESS will distribute the resource's fixed and variable costs for the period to all of the activities that made use of the resource during the period. SIMPROCESS will calculate the costs for this period as follows: 1.) 3. This distribution is based on the amount of the available capacity used by the activity during the period. Calculate the variable costs for each resource based on the number of entities processed and the processing times as described. In this manner. For each resource that has specified costs and that is set to calculate costs. These calculations proceed as follows: SIMPROCESS User’s Manual 175 . the period costs will be split evenly between the two activities. Divide the period costs for the resource based on the usage by activities. For each of the two resources. Next. these steps are completed for all resources in the model that are set to calculate costs. After all resource costs are distributed to the activities. SIMPROCESS tracks all the activities that used the resource and all of the types of entities processed in those activities. the activity costs are then distributed to each type of entity processed by the activity. 2. Add the variable costs to the fully absorbed costs and the capacity based costs.Cost Calculations Cost Calculations When you run a simulation. suppose that a resource is used evenly by two activities and was busy 50% of the time for the cost period. two of type A and three of type B. (In this case. SIMPROCESS will calculate the entity costs based on these activity costs. creating two period costs for each resource. SIMPROCESS will pause at the end of each cost period to calculate the period costs. each activity accumulates its period costs from all of the resources that it actually made use of during the period. (In this case. the fully absorbed costs should be twice the capacity costs since the resource was 50% idle during the period. Then calculate both the fully absorbed and capacity based fixed costs. based on the total number of entities processed. 4. For example.) In general. calculate the portion of fixed cost represented by idle time. suppose that during the period each activity processed five entities. Further.

Upon completion of these calculations. the activity cost is displayed for the total number of each entity type. you can divide the cost for that entity type (the cost number displayed in the report) by the total number of entities of that type processed (available in the Standard Report). The activity costs are apportioned to the entities based on the number of each entity type divided by the total number of entities. the pool of activity cost is broken out to each entity type based on the entity usage of that activity. 176 SIMPROCESS User’s Manual . not for each entity instance.CHAPTER 7–Activity-Based Costing 1. In the cost report. SIMPROCESS will resume the simulation for the next cost period. 2. In other words. To calculate the entity instance cost. The activity determines the total number of entities processed for the period and the portion of this total represented by each type.

For example. the cost objects list will contain Resources or Activities. buttons. List Boxes Model Elements List Depending on the cost reports selected from the Display ABC Reports menu. then. Cost Periods List Cost periods defined under Simulation Run Settings. and Activities are defined using a common dialog format.Displaying ABC Reports Displaying ABC Reports From the Reports pull-down menu. The dialogs consist of list boxes. select Display ABC Reports for Entities. Resources. Cost Objects List The objects for which cost reports will be displayed. or Activities. and replication options. Resources. Resources. or Activities that are in the model. this list box will contain the list of the Entities. SIMPROCESS User’s Manual 177 . The cost reports for Entities. if you selected Display ABC Reports for Entities.

Click on the desired radio button for Sum or Detail. Options Capacity Cost vs. and divides that amount by the unit hours of the resource used by all activities for the cost period. Reports can be displayed as “Sum” or “Detailed”. 3. 4. or Activities). Select the cost period. Resources.CHAPTER 7–Activity-Based Costing Buttons Display Reports This button displays the reports for the selected cost objects. 178 SIMPROCESS User’s Manual . 2. Entities. for the cost period. To Define a Cost Report: 1. and divides that by the total available unit hours of the resource. Replications This option allows you to display the cost report for the replication number selected in the For Replication field. Click on Display Reports button. Select the model elements for which you want to display reports (i. Absorption Cost These options allow you to display cost reports with the fixed costs allocated using either Absorption or Capacity Costing. Capacity Cost calculation takes the unit hours used by the activity. Click on the radio button for Sum or Detail. Click on the radio button for Sum or Detail. Select the cost objects.e. Absorption Cost calculation takes the unit hours used by the activity.

Activity Based Costing: A Tool for Reengineering the Enterprise. April/May 1995. pp. New York. Terrence Ozan. The Ernst & Young Guide to Total Cost Management. John Wiley & Sons. SIMPROCESS User’s Manual 179 . Douglas Webster. Robert Mc Ilhattan. Marcus Harwood. 1992. Ostrenga.Displaying ABC Reports References Michael R. Enterprise Reengineering. 18-23.

CHAPTER 7–Activity-Based Costing 180 SIMPROCESS User’s Manual .

As you sharpen the focus of your analysis and your model becomes detailed. SIMPROCESS User’s Manual 181 .CHAPTER 8 Output Reports SIMPROCESS defaults to collect statistics for all entities and all resources for the Standard Report. and in SIMPROCESS Professional you can export your results to a database. SIMPROCESS allows you to define custom statistics to gather more specific information about your model. In addition. you can export a Simulation Results file containing all the statistics gathered from your model in a tab-delimited format. The entity and resource statistics gathered for the Standard Report will usually be sufficient when you start working with your model. Further. This default set of statistical measures will be gathered for every model you run unless you change the statistics selections. you will add custom statistics to narrow in on the performance measures you are most interested in.

Typically. From the Report menu bar. This will open the Display Standard Report dialog. the Standard Report data is best viewed in the left justified mode and with AutoFit checked for the columns. i.CHAPTER 8–Output Reports Standard Output Report After the simulation run has completed.. Excel. Next. (if your model ran for multiple replications) you can select which individual Replications. In the Report Replications list box. choose Display Standard Report. press the Display Report button to open the report. select whether you want to view the Standard Report with a Text Editor (Notepad by default) or with a Spread Sheet. use the Browse button to point to its executable.e. you will want to look at the Average of All Replications report. the Average of All Replications run. Now. or the Sum of All Replications run you want to see performance measures for. Once you have the spread sheet open.exe. To view the Standard Report with a spread sheet. 182 SIMPROCESS User’s Manual . you can display the Standard Report to view output statistics for your model.

defined in the model. For more detail on Activity Based-Costing see. beginning on page 163. you must turn on the Post Simulation Reports check box on the Attribute Properties dialog for each attribute that you want statistics kept. Total Cost of Use and Average Cost per Resource using both Absorption and Capacity Costing to allocate fixed resource costs. if the value of an attribute does not change during the simulation run. Statistics can be kept for all types of attributes. custom statistics collection. For each Resource defined in the model. • Attributes are handled differently for the Standard Report. You choose which one will be displayed when the attribute is defined. Chapter 7–Activity-Based Costing.Standard Output Report Default Performance Measures By default. The report will display either Time-weighted or Observation based statistics depending on which option you choose. • For each Attribute. For one thing. SIMPROCESS will collect the following performance on Entities and Resources: • • • For each Entity defined in the model. ABC (Activity-Based Costing) reports for each Entity defined in the model include: Total Cost of Processing and Average Cost per Entity using both Absorption and Capacity Costing to allocate fixed resource costs. Lastly. even if Post Simulation Reports is checked on. average and maximum number of units busy is measured and shown as a percent of capacity. Any additional measures SIMPROCESS User’s Manual 183 . Additional Performance Measures You can also define additional performance measures. other than Entity Instance attributes. Cycle Time and Count statistics are displayed. to be gathered as well. Statistics are not kept on Entity Instance attributes. either Observation or Time-weighted statistics will be displayed. except Entity Instance Attributes. ABC reports for each Resource defined in the model include. its statistics will not be displayed in the Standard Report.

0 will not have the default performance measures defined on them. The performance measures displayed on the Standard Report will be those set through the Define Global Statistics Collection. Note Any models built with SIMPROCESS prior to Release 2. 184 SIMPROCESS User’s Manual .CHAPTER 8–Output Reports that you define will be added to the Standard Report the next time you run the model. Custom statistics are covered in the next section.

and Entity Cycle Time by State are selected either from the Define Global Statistics Collection dialog by choosing Collect Entity Statistics or by choosing Collect Entity Statistics when each entity is defined. Such performance measures as cycle time. (2) Real-time Plots. activity costs.Custom Statistics Custom Statistics SIMPROCESS provides you with the ability to add custom statistics to the Standard Report for analyzing the performance of your business processes. and resource utilization can be calculated by SIMPROCESS. display. The following sections describe the types of statistics generated by SIMPROCESS and provide examples of each statistic type. Entity Statistics Entity statistics provide detailed information about the numbers of entities existing in the model during a simulation and the amount of simulation time (cycle time) that entities require to pass through the model. and how to define. then the above statistics (other than Real-time Plots and Attribute Value) will be in the Standard Report for every entity defined. SIMPROCESS User’s Manual 185 . print. This chapter describes the types of statistics available. Total Count. then the global Collect Entity Statistics should not be selected. (4) Entity Cycle Time by State. If Collect Entity Statistics on the Define Global Statistics Collection dialog is selected. (3) Entity Count by State. and export them. SIMPROCESS provides four types of entity statistical reports: (1) Total Count. Entity Count by State. If only statistics for selected entities are desired. and the Collect Entity Statistics on the Entity Definition dialog should be selected for the desired entities. and (5) Attribute Value.

The chart is updated as each entity of the given type completes its cycle time. This occurs when the entity is transformed or disposed in the model. and how many have exited the system throughout the simulation. 186 SIMPROCESS User’s Manual . One chart is generated for each entity type that is selected. This may slow the simulation but gives you a running view of the performance metrics during the simulation. If multiple real-time plots are selected. Real-time Plots If selected. Cycle Times Plot — This report shows the individual cycle time measurements for each entity of a given type. Total Count will not be collected unless Collect Entity Statistics (either global or individual) is selected prior to running the simulation.CHAPTER 8–Output Reports Total Count Statistics These statistics show the total number of entities that have been generated during the simulation. The results are not available until the simulation is complete. maximize. they will be stacked on top of each other. The observation points on the chart are connected only to improve their visibility and are not meant to suggest continuity. You may minimize. how many remain in the system at the end of the simulation. Real-time plots are selected under the Report menu item Define Real-Time Plots/Entities. move or resize the real-time plots while the simulation is running. real-time plots display statistics while the simulation is running.

One chart is generated for each entity type that is selected. the number of entities that exist in the model) for each entity type. Entities In Process Plot — This chart shows the current number of entities that are in the process.Custom Statistics Entities in System Plot — This chart shows the individual entity count measurements (that is. Entity Count By State Statistics These statistics present the simulation generated entity count statistics for selected entity types. Hold for Condition Plot — This chart shows the current number of entities that are in the holding for condition state that may be associated with activities such as assemble. Statistics are time-weighted for entity counts. Wait for Resource Plot — This chart shows the current number of entities that are in the waiting for resource state. The chart is updated as each entity of the given type is created and disposed in the model. gate. and batch. These statistics show the average number of entities in the system SIMPROCESS User’s Manual 187 .

waiting for resource. then the statistics must be selected where those attributes are defined. The results are not available until the simulation is complete. namely. Attribute Value Statistics The attribute value statistics must be specified in the dialogs where attributes themselves are defined. Cycle Time will not be collected unless Collect Entity Statistics (either global or individual) is selected prior to running the simulation. and in-process. Observation-based Average — This report shows the observation based statistics for entity attributes. The three states that an entity may be in are waiting for resource. The cycle time calculations are based on the number of entities that were processed at the end of the simulation. (3) Real-time Plots. Utilization by State is selected either from the Define Global Statistics Collection dialog by choosing Collect Resource Statistics or by choosing Collect Resource Statistics 188 SIMPROCESS User’s Manual . Resource Statistics Resource statistics provide detailed information about the amount of time resources spend in possible states during a simulation. These statistics show the breakdown of the Cycle Time by state. (2) Utilization by Activity Statistics. holding for condition.CHAPTER 8–Output Reports broken down by three states. SIMPROCESS provides three types of statistics which show various summaries of the state information for a Resource: (1) Utilization by State Statistics. Cycle Time By State Statistics Cycle Time statistics present the simulation generated cycle time statistics for selected entity types. and in-process. Time Weighted Average — This report shows the time-weighted statistics for entity attributes. The results are not available until the simulation is complete. holding for condition. and (4) Attribute Value Statistics. If the attributes are defined while entity types are being defined. Entity Count will not be collected unless Collect Entity Statistics (either global or individual) is selected prior to running the simulation.

or reserved given the resource was available. The time available is considered to be the total time for the resource. SIMPROCESS User’s Manual 189 . busy. Utilization by Activity is selected either from the Define Global Statistics Collection dialog by choosing Collect Resource by Activity Statistics or by choosing Collect Resource by Activity Statistics when each resource is defined. If only statistics for selected resources are desired. unplanned downtime. Thus. Similarly. If Collect Resource Statistics on the Define Global Statistics Collection dialog is selected.Custom Statistics when each resource is defined. and reserved are shown in the Standard Report. downtime (planned or unplanned) is not included. and the Collect Resource Statistics on the Resource Definition dialog should be selected for the desired resources. That is. planned downtime. then the global Collect Resource Statistics should not be selected. if a resource has no downtime defined. Also included in the Standard Report are the percentages that a resource was idle. The average number of units and percentages that were idle. then the percentages for idle. busy. and reserved will be the same for the calculations including downtime and the calculations not including downtime. busy. Utilization by State Statistics These statistics present summaries of the simulation generated statistics for the time that the number of units of the selected Resources spent in each state. then the Utilization by State statistics will be in the Standard Report for every resource defined.

report shows the amount of a resource's units which is in reserved state during the simulation. 190 SIMPROCESS User’s Manual . Units Idle Plot—This report shows the amount of a resource's units which is left idle during the simulation. Units Reserved Plot—This Time Weighted Average — This report shows the time-weighted statistics for resource attributes. Planned Downtime Plot—This report shows the amount of a resource's units which is not available due to planned downtime during the simulation. The reports present their data while the simulation is running. All report data is shown on an X-Y plot where the (horizontal) X-Axis represents simulation time and the (vertical) Y-Axis shows the resource's units. Units Busy Plot—This report shows the amount of a resource's units which is busy during the simulation. One chart is produced for each selected Resource. Attribute Value Statistics The attribute value statistics must be specified in the dialogs where attributes themselves are defined. instantaneous capacity allocations for each of the five resource states. Unplanned Downtime Plot—This report shows the amount of a resource's units which is not available due to unplanned downtime during the simulation. Real-time Plots These reports present the simulation generated. If the attributes are defined while resources are being defined.CHAPTER 8–Output Reports Utilization by Activity Statistics These statistics show the average number of units that were busy by activity. This may slow the simulation but gives you a running view of the resource behavior throughout the simulation. Real-time plots are selected under the Report menu item Define Real-Time Plots/Resources. then the statistics must be selected where those attributes are defined.

Total Entity Counts. Similarly. and would lead to much unneeded information. It is recommended that activity statistics always be selected at the appropriate activity. Collect Activity Statistics must be selected if Collect Activity by Entity Statistics is selected. (3) Total Entity Counts.Custom Statistics Observation-based Average — This report shows the observation based statistics for resource attributes. The Process/Activity statistics are limited in scope to specific Processes/ Activities in contrast to entity statistics which encompass the entire model. If only statistics for selected activities are desired. This could cause memory problems. (5) Cycle Time by State by Entity. If Collect Activity Statistics on the Define Global Statistics Collection dialog is selected. (4) Entity Count by State. and (7) Attribute Values. and the Collect Activity Statistics on the activity properties dialog should be selected for the desired activities. SIMPROCESS User’s Manual 191 . (2) Real-time Plots. Cycle Time by State. Cycle Time by State by Entity and Entity Count by State by Entity are selected either from the Define Global Statistics Collection dialog by choosing Collect Activity by Entity Statistics or by choosing Collect Activity by Entity Statistics on the appropriate activity. then Collect Activity Statistics will be selected automatically by SIMPROCESS. then the global Collect Activity Statistics should not be selected. If Collect Activity by Entity Statistics is selected (global or individual). WARNING Collect Activity Statistics and Collect Activity by Entity Statistics should NOT be selected from the Global Statistics Collection dialog for large models. Process/Activity Statistics Process/Activity Statistics provide detailed information about the numbers of entities entering and leaving particular Processes/Activities during a simulation. then the activity statistics will be in the Standard Report for every activity defined. (6) Entity Count by State by Entity. SIMPROCESS provides seven types of activity statistics: (1) Cycle Time by State. and Entity Count by State are selected either from the Define Global Statistics Collection dialog by choosing Collect Activity Statistics or by choosing Collect Activity Statistics on the individual activity properties dialog.

Cycle Time statistics present the simulation generated cycle time statistics for entity types that processed at the selected activities or processes. Cycle Time will not be collected unless Collect Activity Statistics (either global or individual) is selected prior to running the simulation. and in-process. These statistics show the breakdown of the Cycle Time by state. The cycle time calculations are based on the number of entities that were processed at the end of the simulation. The three states that an entity may be in are waiting for resource. The results are not available until the simulation is complete. These statistics are calculated based on the entity counts for the selected Processes/Activities.CHAPTER 8–Output Reports Cycle Time by State Statistics These statistics present the simulation generated cycle time statistics for the selected Process/Activity. holding for condition. This may slow the simulation but shows a running view of the entity count 192 SIMPROCESS User’s Manual . Real-time Plots Real-time Plots display statistics while the simulation is running.

Time Weighted Average—This report shows the time-weighted statistics for the selected Process/Activity attributes. Entity Counts Plot—This chart shows the individual entity count measurements for each Process/Activity. One chart is generated for each Process/Activity selected. One chart is generated for each Process/Activity that is selected. Count by Entity Type will not be collected unless Collect Activity by Entity Statistics (either global or individual) is selected prior to running the simulation. The chart is updated as each entity departs the Process/Activity. Attribute Value Reports The attribute value reports must be specified in the dialogs where the attributes themselves are defined. SIMPROCESS User’s Manual 193 . that were processed by the selected Process/Activity. Count By Entity Type—This report shows the average and maximum entity counts broken down by entity states. If the attributes are defined locally for a Process/Activity. Entity Count will not be collected unless Collect Activity Statistics (either global or individual) is selected prior to running the simulation. then the reports must be selected where those attributes are defined. The results are not available until the simulation is complete. (2) are remaining in the Process/Activity at the end of the simulation. In Process. Total Entity Count—This report shows the total number of entities that (1) have arrived at the Process/Activity.Custom Statistics throughout the simulation. and (3) have been processed by the Process/Activity. Cycle Times Plot—This chart shows the individual cycle time measurements for each Process/Activity. That is. The observation points on the chart are connected only to improve their visibility and are not meant to suggest continuity. Wait For Resource. how many were in the Process/ Activity. and Hold for Condition states. The chart is updated as each entity of the given type enters or departs the Process/Activity. Entity Count Reports These reports present the simulation generated entity count statistics for selected Processes/Activities.

CHAPTER 8–Output Reports Observation based Average—This report shows the observation based statistics for the selected Process/Activity attributes. 194 SIMPROCESS User’s Manual .

This file is tab-delimited. see “Simulation Results File. For a complete listing of the format of the Simulation Results file. and can be opened using a text editor or spreadsheet. The Simulation Results file will. in a standard format that can be opened by many different applications. The file will contain the complete statistical measures corresponding to the reports selected for the current model.” beginning on page 411 SIMPROCESS User’s Manual 195 .xpt file extension and be saved to the current model directory. This file gives you raw statistical data that is displayed in the Standard and Custom Reports. by default have a . Select File/Export/Simulation Results to open the Save Statistics dialog box.Simulation Results File Simulation Results File The Simulation Results file is generated from the File menu.

CHAPTER 8–Output Reports 196 SIMPROCESS User’s Manual .

SIMPROCESS User’s Manual 197 .Part B Advanced SIMPROCESS Functions and Features The chapters in this section describe the advanced functions and features available in SIMPROCESS Professional.

– 198 SIMPROCESS User’s Manual .

Branch Managers. such as Activities. are provided by the system. The SIMPROCESS Template Library facility offers many model building and analysis support features. For example. or resource that is defined and reused over and over. and so on for business process modeling in a financial services business. You can create many different Templates and load them into the system when they are needed. You can populate the Palette bar with customized Processes/Activities (for easy reuse) and/or organize them into Templates selected from the Create pull down menu. A standard set of Templates. Loan Officers. and Resources. SIMPROCESS User’s Manual 199 . Processes. A Library could also contain templates that may represent competing models of the business processes that are under scrutiny.CHAPTER 9 Reusable Templates and Libraries One of the most powerful features of SIMPROCESS is the Reusable Template. hierarchical process. you may define in the Resource Library specialized Resources like Tellers. A template is an activity. Templates also provide the ability for you to set default parameters for system provided items. A library is a collection of templates that can be saved as a file and loaded before starting a modeling session.

you can use the Library Management facilities to customize defaults for model elements that are built into SIMPROCESS (statistical distribution and activity parameters. etc. Manufacture. Dispose. For example. 200 SIMPROCESS User’s Manual . Transport) and Resources (Trucks. A standard set of Templates.) relevant to the Distribution domain. The Library is organized by category of constructs. In addition to providing a repository for storing categories of modeling constructs. We encourage you to develop your own objects and organize them into libraries. and Resources. People. Templates: • Are repositories for model building constructs you manipulate or create.CHAPTER 9–Reusable Templates and Libraries Library Concepts The SIMPROCESS Template and Library facilities support the reuse and organization of the various constructs used in building models. In summary.) and others you have customized. For example.) You can even reorganize the layout of your Palette bar. The libraries that you build can be saved to disk and loaded during the modeling session as they are needed. such as Activities. Over time. Processes and Activities that are less frequently used can be stored at the other end of the Palette bar or accessed through the Create pull-down menu. With a large set of libraries of reusable model building blocks. your libraries of objects will grow. you are able to build new models faster. are provided by the system. save them to a library named Distribution and use them to quickly build distribution models. etc. you may develop a set of Processes (Warehouse. Processes. Processes. the Activities Library contains all the Activities templates that are found on the Palette Bar (Generate. such as Activities. You can keep Processes and Activities that you use frequently at one convenient location on the Palette bar for quick access. connector line width. This enables you to share templates with your colleagues and increases the building blocks available for model construction. and Resources. Each category can have many elements and can be thought of as a Library on its own. etc.

Activities and Resources. SIMPROCESS User’s Manual 201 .Library Concepts • • • • • Allow customizing of model elements through parameter settings. Facilitate reuse of Processes. Allow the grouping of Processes and Activities in userdefined templates. Facilitate saving and loading of customized model elements onto disk for use in other models or by colleagues. Allow customized placement of Processes and Activities on the Palette bar and the Create pull-down menu.

Processes. and create copies of existing elements that can be customized. For more information. 202 SIMPROCESS User’s Manual . This function saves the elements in each of the system templates (Activities. Add Edit allows you to view template elements. Load allows you to bring a library that has been saved to disk previously into your current SIMPROCESS session and use the template elements to build models. the library is loaded and is available for use.CHAPTER 9–Reusable Templates and Libraries Defining and Editing Templates The Define/Templates pull down menu provides access to various methods for manipulating templates. Once the OK button has been selected. change default parameter settings. It will appear in its respective category (Activities or Process.) into one library file. etc. NOTE The Resource Properties dialog contains an Add Template command button.” beginning on page 135. Simply specify the file name containing the saved template in the dialog box presented. The Load command allows you to load this library in the future. Save allows you to save a template library to disk for future use. Resources. set up your Palette bar.) You also can define and add the Process or Activity to a user specified template that is available under the Create menu bar option. The four functions available under this pull down menu are: allows you to add the selected Process or Activity from the workspace to the library. see “Resource Modeling Constructs.

Select Edit found under the Define/Templates pull down menu. Choose the Close button when finished with this dialog box. 2. Each entry in the list box is a library. This dialog provides access to all the system templates in SIMPROCESS. you wish to edit an Activity. A new dialog appears with a list of all the standard predefined Activities and the ones that you may have defined. 3. If. set up your Palette bar. as shown below. for example. change default parameter settings.Editing Templates Editing Templates Edit allows you to view template elements. The dialog box that appears contains a list box. SIMPROCESS User’s Manual 203 . Select the Close button when finished editing the templates. and create copies of existing elements that can be customized. select Activities in the list box and choose the Edit button. Using the Edit Feature 1.

CHAPTER 9–Reusable Templates and Libraries 4. 1. if you select Batch and choose the Properties button. the following detail dialog for Batch Activity is displayed: 204 SIMPROCESS User’s Manual . Select a library by following the procedures on page 203. Choose the Properties button. if you use a Delay with a particular delay time. Then you can just drag it out and use it. The three command buttons to edit library elements are: • • • Copy… Properties… (Edit Model Element Parameters) (Edit Template Parameters) Preferences… The Copy command button lets you create a copy of an existing Process/Activity. modify its defaults and put it back in the library. For example. and put it in the library and on the Palette bar. It displays the dialog used to define the model element selected in the list box. Change Default Parameter Settings (Properties) Use this facility to maintain the default settings for all model elements in the Library. 2. For example. you can create one with those characteristics.

)... Select the OK or Cancel button when you are finished with this dialog box. 5. You must save the library to disk and reload it every time you restart SIMPROCESS to retrieve the customizations you have made. SIMPROCESS User’s Manual 205 . 4.Editing Templates 3. Select the Close button when finished editing the templates. The new value settings will appear in the dialog the next time you create another instance of that type of model element (Batch Activity). Connectors. The Properties field appears on all libraryediting dialogs (Activities. SIMPROCESS loads a default library every time it is restarted. Entities. Use the Help button for an explanation of field definitions or see page 103 in this guide. Change any of the values in this dialog.

In the default Palette. Place an Activity/Process on the Palette bar by selecting the On/Off check box and selecting the Row and Column where you want it to appear.CHAPTER 9–Reusable Templates and Libraries Edit Library Parameters Using this facility you can place Activities/Processes on the Palette bar or on the Process/Activity option of the Create pull down menu. So. You can change the appearance of the button on the Palette bar by making a selection in the Palette Icon combo box. Choose the Preferences button. 206 SIMPROCESS User’s Manual . The example shown is for a Batch Activity. 2. It displays a dialog box. you should use Row 14 and Column 1 or 2. there are 13 rows and 2 columns. This name appears as a tool tip when the cursor is on top of the button. if you wish to add a new template to the current palette. 1. You can type in your own descriptive name in the Palette Label. Select a library by following the procedures on page 203. 3. This lets you arrange the Palette bar in a manner you find convenient. You can also change the appearance of the layout icon by making a selection in the Layout Icon combo box.

Select the Close button when finished editing the templates. The On/Off check box must be selected for this Process/Activity to appear in that menu. 5. 6. Choose the OK or Cancel button when you are finished with this dialog box.Editing Templates 4. SIMPROCESS User’s Manual 207 . The Menu Owner text box allows you to place this Process/ Activity under the Create pull down menu.

But this only works within the same model. is blank. and Consumable check boxes are unchecked. plus a number. Once you have created a resource template. The default resource template (aptly named Resource) sets properties of a new resource as follows: Name is the template name. is 1. If you think you will need the same or a similar resource in other models. a combo box will appear at the top of the Resource dialog box. Modify the dialog box as shown below: 208 SIMPROCESS User’s Manual . Comment Units Fractional Usage Suppose you define a resource named Diesel Fuel. you can define a template modeled after Diesel Fuel: 1. If you then need to define other resources with attributes similar to Diesel Fuel.CHAPTER 9–Reusable Templates and Libraries Saving a Resource for Reuse The Add Template command on the Resource Properties dialog stores a copy of your resource definition as a re-usable template in SIMPROCESS’s Resource Library. you could use the Copy function to copy the definition. Your template can be selected from this list in the current model. Start by adding a resource using the Resource Properties dialog. Add Template allows you to create a new resource template using parameters you specify.

4. the resource definition is not accepted. you will see the templates you have created. 2. call it Fuel Oil. If you click on Cancel instead of OK. For this example. SIMPROCESS User’s Manual 209 .Saving a Resource for Reuse The resource named Diesel Fuel is defined as a consumable resource with an initial Units of 1000. 5. If you click on the down arrow of the Type combo box. Enter a name for the template in the Template Name field. there will be a Type field near the top of the Resource dialog box whenever this dialog box is reopened. The Type field identifies the template defining default parameters for the resource you are creating. Click on Add Template: 3. Click on OK to save the template definition. It can be allocated in fractional quantities. Click on OK to accept the resource definition for Diesel Fuel. but the template is. After the first resource template is created.

The template you just created is included in the list: Select Fuel Oil from the Type list box. and then click on Add.CHAPTER 9–Reusable Templates and Libraries Now close the Resource dialog box and select Define Resources again. Notice the initial settings of the Resource Properties dialog box are displayed: 210 SIMPROCESS User’s Manual .

SIMPROCESS User’s Manual 211 . the template only exists in the current SIMPROCESS session. you must use the Save option under Templates. the template is gone. If you exit SIMPROCESS and then start it again. To save the template for future sessions.Saving a Resource for Reuse Note that at this point.

212 SIMPROCESS User’s Manual . place the file in the SIMPROCESS working directory (by default. The name of the bitmap graphic file should be <icon name>_s. If you have a bitmap file that you wish to use on the Palette. When you add your Activity or Process template. the icon name will be in the Palette Icon field. c:\SPUSER\).CHAPTER 9–Reusable Templates and Libraries Importing Bitmap Graphics For Use As Palette Icons The Palette Icon field lets you customize the look of the SIMPROCESS palette. Your bitmap graphic should be 16 by 16 pixels.bmp.

but every business process is unique in some way. For example. or when the total number of pending orders reaches a certain number. In those cases. Products may be shipped on a predetermined schedule. There will be times when you need flexibility to model complex situations and the built-in functions of SIMPROCESS may be inadequate. you may define your own attributes and expressions. a typical SIMPROCESS model for an appliance manufacturer’s distribution process might include a batch activity where customer orders are collected for shipment.CHAPTER 10 Customizing a Model with Attributes and Expressions SIMPROCESS provides a wide range of predefined model elements and statistical options. The SIMPROCESS Batch activity readily handles these scenarios with the Quantity to Batch and Release Threshold options. How would you model this situation? SIMPROCESS User’s Manual 213 . But suppose you need to model a process where the dispatching of a shipment depends on the total weight of the appliances that have been accumulated.

You can see how many entities of a particular type (each customer order. Two advanced SIMPROCESS features. 214 SIMPROCESS User’s Manual . SIMPROCESS provides you with several reports that track the flow of entities through a model. But suppose you want to determine the percentage of orders that are shipped by a promised delivery date (service level). or the average amount of time each type of entity takes to make its way through the simulation.CHAPTER 10–Customizing a Model with Attributes and Expressions Add weight of current order item to total weight of all orders received. Is total weight over the max allowed? Yes Release Shipment No Another area where you might need flexibility is in customizing reports. for example) are processed during simulation. so that you can measure your success in attaining service goals. provide you with the ability to handle these and many other situations. Attributes and Expressions.

Communicate information (such as attribute values) between two processes in a model.. an attribute is the total weight of the items accumulated in the batch activity. Some system attributes can be modified by users. For example. Attributes may be used to: • • • Alter the behavior of a process by changing the value of an attribute during a simulation. in the case of a Batch process where entity release depends on the weight of entities received. these are variables that control process parameters such as the number of entities to batch or amount of time of the next delay. number of orders) is automatically tracked and stored in a built-in system attribute named NumberCreated. To determine the percentage of orders processed within a specified period of time. and User Defined Attributes. Store data collected during a simulation run. There are two categories of SIMPROCESS attributes: Built-in System Attributes. SIMPROCESS User’s Manual 215 . By modifying these system attributes. which SIMPROCESS does not know about. which you create.Introduction to Attributes and Expressions Introduction to Attributes and Expressions Attributes Attributes are user-defined and built-in variables of model elements whose values can change during the course of a simulation run. you would create an attribute called applianceWeight. To track an attribute such as weight. the number of entities generated for each entity type (e. These are called "Get-Set" type System Attributes. which SIMPROCESS automatically creates and updates. For example. Generally. the number of orders that meet the promised delivery date. you can affect the behavior of your simulation. the attributes you need to track include the processing time for each order.g. and the total number of orders processed.

dishwasher-order. Define an Attribute called applianceWeight and set its value whenever an appliance-order entity is generated by SIMPROCESS. These are called "Get-only" type system attributes. One way to force a shipment to be released is to change the batch size to a value equal to the current number of entities in the Batch Activity. is also available through get-only system attributes. or at the moment an entity (e. such as which activity is processing an entity or what type of entity is being processed.CHAPTER 10–Customizing a Model with Attributes and Expressions System Attributes that you cannot change include those that monitor statistics. Name. This information is available from a system Attribute. at the beginning of the simulation. You determine what value to assign applianceWeight by checking the name of the entity type (e..g.. 216 SIMPROCESS User’s Manual . For a complete list of system attributes. Expressions are user-written statements that SIMPROCESS executes during a simulation run. You will see actual code for this later in the chapter. When an entity is received at the Batch Activity. for example. Information on the status of a simulation.. In the case of the model where releasing of shipments depends on the total weight of orders such as appliances. Expressions The ability to create and set attributes is a powerful simulation feature when used in conjunction with SIMPROCESS Expressions. These values are available in System Attributes.g. you select the point at which you want the Expression to be evaluated. and if it exceeds a certain value. such as the number of entities generated during the simulation. see “SIMPROCESS System Methods and Examples. 2.g. order distribution).” beginning on page 393. a customer order) is received by an Activity (e. Then check the total weight. television-order). add the entity’s applianceWeight value to the total weight of all orders waiting to be shipped (another User Attribute). do something to cause the Batch Activity to release a shipment. you could do the following: 1. When you define an Expression.

User Defined Attributes. The examples in this chapter refer to a Batch Activity. SIMPROCESS User’s Manual 217 . so familiarity with this Activity will help you follow the examples.Introduction to Attributes and Expressions This chapter describes: • • • Built-in System Attributes. How to write an Expression which uses User Defined Attributes and System Attributes.

The number of entities of a particular type that have been allocated thus far in the simulation.” beginning on page 393. It starts with a look at the system Attributes built into SIMPROCESS. Let us look at the table entries below for the attributes accessible from Batch Activities: 218 SIMPROCESS User’s Manual . System Attributes SIMPROCESS provides access to the state of a simulation through a set of built-in variables. The name of the activity holding a particular entity. A complete list of System Attributes is given in “SIMPROCESS System Methods and Examples.CHAPTER 10–Customizing a Model with Attributes and Expressions Using Attributes in SIMPROCESS This section contains a closer look at attributes and how they can be used in SIMPROCESS. The type of entity being generated by a Generate activity. These System Attributes provide information such as: • • • • The type of entity currently in an activity. and then goes on to a detailed discussion of User Defined Attributes and how to define them.

Rather. 3. The MinBatchSize attribute is an integer value containing the minimum number of entities a Batch activity must hold before it can release a batched entity. You can get the current value of the attribute and change it..g. The MaxBatchSize attribute is an integer value representing the maximum number of entities to batch at a Batch activity.Using Attributes in SIMPROCESS Object Name Type Get/ Set Description Number of entities to batch. See “Using Object Attributes in Expressions” on page 252.) representing hours. if you wish. you use the object to direct SIMPROCESS’s attention to the model element you are interested in.5. Number of entities must be in a batch before it can be released. An object type attribute has a special purpose. Time to wait before releasing an undersized batch. Batch MaxBatchSize Activities MinBatchSize INTEGER Both INTEGER Both MaxWaitTime REAL Both 1. SIMPROCESS User’s Manual 219 . you are not interested in the value of the object itself. etc. The attribute MaxWaitTime specifies the maximum amount of time to wait before releasing the batched entity which have met the Activity’s MinBatchSize. 2. The best way to understand this is by examining an object attribute in use. Unlike other attributes. 7.0. You can get and set the value of this attribute. 1. The value is a real number (e.

In SIMPROCESS terminology. if your model contains entities for different types of appliances (refrigerators. it makes sense to locally define an attribute for that particular Activity. Model attributes are only globally-defined. so every entity has an appliance weight attribute which you can reference.CHAPTER 10–Customizing a Model with Attributes and Expressions User Defined Attributes By defining your own set of attributes. toasters. 220 SIMPROCESS User’s Manual . SIMPROCESS creates an instance of that attribute for every entity in your model. In this case. It can have a completely different meaning and data type. you could also define a global attribute called applianceWeight for Resources. you either tell SIMPROCESS to create an instance of that attribute for every model element of the same type (e. Note that you can define attributes with the same name for different model elements. Truck resources). an instance of that attribute is automatically created for each model element of that class. skill level of a resource.) and you want to assign a weight value to each entity. When you define an attribute globally. etc.g. no other activity will have a weight attribute automatically created for it. the only Activity in which you are interested in weight is the Activity where entities are batched. you can begin customizing your model. When that’s done. or service level. you could globally define an entity attribute called applianceWeight. such as entity weight or size.Entities. These attributes can represent model element attributes that are not built into SIMPROCESS. Resources). The Model. You define attributes in association with: • • • • Entity types. or Entity instances Processes or Activities. or to just create the attribute for a particular type of model element (Customer Order entities. On the other hand. Resources. we say that attributes are either globallydefined or locally-defined. For example. When you define an attribute.. For example. You cannot define a global and a local attribute with the same name for the same model element. televisions.

that is. You also need to keep track of the weight of all orders received at the DISTRIBUTE-ORDERS Batch Activity. Local attributes can only be defined from the dialog box of a model element. They are named refrigerator-order. SIMPROCESS User’s Manual 221 . or from the dialog box of a model element. You can globally define the attribute. The model contains entity definitions for each type of appliance that a customer can order. Let us look at two activities of an appliance manufacturer’s distribution model. create an attribute for every entity in the model. you need to define an attribute in which to store the weight. Globally Defining an Attribute from the Menu Bar To globally define an attribute from the SIMPROCESS menu: 1. But you do not need to track weight at any other Activity. To track the weight of each appliance. You can define a local attribute for the DISTRIBUTE-ORDERS Activity. 2.User Defined Attributes Creating a User Defined Attribute Global attributes can be defined from the SIMPROCESS menu bar. toaster-order. select Attributes. From the Define pull-down menu. A couple of examples will illustrate this. in which customer orders are generated. televisionorder. and a Batch Activity named DISTRIBUTE-ORDERS. etc. Select Entities. in which the ordered appliances are shipped to customers. There is a Generate Activity named RECEIVE-ORDERS.

the list box will be empty and the Edit. 222 SIMPROCESS User’s Manual .CHAPTER 10–Customizing a Model with Attributes and Expressions If you select Entity Types instead.e.. or delete attributes. each entity instance. If you have not created any attributes yet. You want an attribute for each order. The list box shows the names of all attributes previously defined. i. Copy. See “An Alternative Method Using Entity Types” on page 256. you will only define one weight attribute for all refrigerator-order entities. and Remove buttons will be inactive.1 The following dialog box appears: The Global Attribute Definitions dialog box is used to add a new attribute or to change. 1. copy. one attribute for all television-order entities. etc. You can make this model work by defining the attribute for entity categories instead of entity instances.

you cannot enter 1. In the Attribute Properties dialog box: Name can be anything you want (except as noted below). An Object attribute’s value can only be set during a simulation run. String. Although not a system attribute. SIMPROCESS initializes the field with a default name that you should highlight and change. Size is a reserved word in SIMPROCESS. the Default value is undefined. as long as you have not previously used it for another attribute of the same class of model element. Boolean. If you are creating a new attribute.User Defined Attributes 3. For this example. The value must correspond to the data type you specify in the Mode field. or Object: SIMPROCESS User’s Manual 223 . Real. Size may not be used as an attribute name. For instance. type applianceWeight. Mode is the data type of the User Attribute. If the Mode is Object. Value is the default initial value of this attribute. Click on the arrow button to select either Integer. Anything you enter in the Default field is ignored. Click on Add to create a new attribute.0 if Mode is Integer.

prompting you to either accept the default value of the attribute. the length of time an attribute remains at a particular value is factored into the statistical data when the average value is calculated. during a simulation run you might use an Object Attribute to point to the Generate Activity that generated an entity. Model Parameter when checked. 224 SIMPROCESS User’s Manual . the Name of the attribute will appear instead. A String is any series of alphanumeric characters. a dialog box will open. or enter a new initial value of the attribute. User-defined attributes can be set as Model Parameters. None tells SIMPROCESS not to collect statistics for the attribute. Each time the value of an attribute changes. Only Global.CHAPTER 10–Customizing a Model with Attributes and Expressions Integer values are numbers without fractional or decimal parts. If nothing is entered in the Comment field. this will appear in the Description field of the Model Parameters dialog box when the model is run. Note that no statistics can be collected for entity instance attributes. Boolean An Object is a reference to another model element in your model. That is. Statistics Properties refer to statistics collected for attributes during a simulation run. and None refer to the way statistics are collected: Observation Based tells SIMPROCESS to collect statistical data without considering the amount of time an attribute maintains a particular level. If a Comment is entered for the attribute. Real values can contain a fractional part. Observation Based. values can be either TRUE or FALSE. For example. Time-Weighted. These statistics are used in SIMPROCESS reports. Time-Weighted provides time-weighted statistics. means that every time the model is run. the new value is added to a running total.

select the attribute from the list box. For this example. You can copy an existing User Attribute by selecting the attribute in the list box. Any time you refer to that entity in your model. 4. an attribute named applianceWeight is created for each entity generated during a simulation run. Give the new attribute a name and change any options that you want to change.User Defined Attributes Real Time Plot and Post Simulation tell SIMPROCESS whether to plot the attribute value changes as they occur during the simulation run (Real Time Plot) or to save the statistics in a file and summarize the data at the end of the simulation run. Cancel Click on OK to accept the options you selected. Before you delete an attribute. To remove an existing User Attribute. click on Close. you will not have a chance to change your mind. and then clicking on the Copy button. and then click on the Remove button. or click on to exit without setting/resetting any options. As a result. When you are finished defining or modifying User Attributes. you can reference or update its applianceWeight attribute. Because applianceWeight was defined globally. Once you click on Remove. any new entities generated in your model will automatically have an attribute of applianceWeight created for it. SIMPROCESS User’s Manual 225 . The User Attribute dialog box is displayed with the options and Default set to the values of the attribute you copied. be sure that the attribute is not used by activities. accept the defaults for all options except Name. Any attribute defined from the SIMPROCESS menu bar is globallydefined.

the model element was an entity. To create the same attribute from a dialog box. Select any of the entities listed. since the attribute you are going to define will apply to all entities. select Define Entities. Click on Edit and the Entity Type Properties dialog box will appear.CHAPTER 10–Customizing a Model with Attributes and Expressions Globally Defining Attributes from Dialog Boxes We noted earlier that you can globally define a User Attribute from either the menu bar or from a model element’s properties dialog box. It does not matter which one. From the Entity pull-down menu. Here is how you do it from a dialog box. 3. In the Define Attributes or Expressions For section. By default. Begin by editing the definition for any model element of the class you are interested in. In the example on page 221 defining the attribute applianceWeight. 226 SIMPROCESS User’s Manual .. select Entity Instance and click on the Attribute button. They both accomplish the same thing. do the following: 1. 2. the Local Attribute Definition dialog will appear..

follow the instructions beginning with step 3 on page 221. SIMPROCESS User’s Manual 227 . Click on the Globals… button. as you will see in the next section. From this point on. This is the global attribute that was defined earlier using the SIMPROCESS menu bar. The User Attribute Definitions dialog box already contains the name of an attribute in its list box. If you click on Add instead of Globals…. 5.User Defined Attributes 4. you end up defining a local attribute.

) contains an Attributes… button.CHAPTER 10–Customizing a Model with Attributes and Expressions Defining a Local Attribute for a Model Element A local attribute is defined for a single model element. 228 SIMPROCESS User’s Manual . In the Batch Activity Properties detail dialog. Entity. the model element is a Batch Activity named DISTRIBUTE-ORDERS: 1. etc. 2. change the Quantity to Batch to 100000 (we will discuss why later). Then click on the Attributes… button. The Properties dialog box of every SIMPROCESS model element (Activity. Double-click on the DISTRIBUTE-ORDERS Activity. In the model described here.

and then Close when you are finished defining your local attributes. Now that you have seen how to define User Attributes. The Attribute Properties dialog box is identical to the one used for defining global attributes. Click on OK. The only difference is that the dialog box for locally defined attributes contains a Globals button. 5. Click on Add. let us see how you can put them to use.User Defined Attributes 3. type batchWeight. For name. 4. SIMPROCESS User’s Manual 229 . The Attribute Definitions dialog box for locally defined attributes is almost the same as the one for globally defined attributes.

Changing an Attribute Value with the Assign Activity Using the Set Attribute list box of the Assign Activity. The supported operators are. -. +. The Operation field contains the operators that can the used to change the value of the selected attribute. Clicking on the Add button will open up the Assign Attribute Properties dialog box. =. The combo box in the Set Attribute field contains the names of all the Global Attributes that the Assign Activity can access. You can also use Assign to change the priority of an entity. *. and /.CHAPTER 10–Customizing a Model with Attributes and Expressions Assign Activity The Assign activity is one method you can use to provide values to globally defined attributes. you can change the value of any Global Attribute (except globally-defined Resource attributes) and Local Activity Attributes of that Assign activity. 230 SIMPROCESS User’s Manual .

a Statistical Distribution.Assign Activity The Value field is where you enter the value you want the attribute to become. the Set Attribute command you have entered will be performed. User-defined Functions can be found on page 257 of this chapter. Each time an entity enters the Assign Activity. SIMPROCESS User’s Manual 231 . This can take the form of a constant. or an Evaluate (Evl) Function. a User-defined Function. The Evaluate Function is covered on page 240.

However. Any type of attribute may be used: Entity. the entity will wait until more resource units are available. if the units of resource requested is larger than the resource capacity. Resource. 232 SIMPROCESS User’s Manual . For instance. if a fractional number of units are requested and fractional usage was not selected for the resource.Type. or Model. Also. Entity. in the example from Chapter 5 (page 142) an entity needed 1 unit of the Service Rep resource to process in that activity. The attribute must be of type real or integer. Activity. every entity will get 1 and only one unit of the resource. Use Edit to modify the existing requirement definition. Using an attribute allows you to vary the units of resource required by each entity. This is true many times when using consumable resources (such as fuel). Thus. Enter the attribute that will have the unit information. there may be instances where the amount of resource needed would be different for each entity.CHAPTER 10–Customizing a Model with Attributes and Expressions Variable Resource Usage User-defined attributes can be used to request units of resources. If the resource is consumable. an error will occur. This error will not occur when using consumable resources. an error will occur that will stop the simulation. During the simulation run.

Variable Resource Usage SIMPROCESS User’s Manual 233 .

234 SIMPROCESS User’s Manual . you learn how to use them. SIMPROCESS Expression Language Basics The SIMPROCESS Expression language is a subset of the MODSIM programming language. we mentioned two examples of modeling logic you can accomplish by using attributes and writing Expressions. Then we defined attributes needed to accomplish these modeling tasks. we will look at how to use these attributes in Expressions. For attributes to be useful. you learned how to define User Attributes and what you might use them for. In this section. the word expression with a lower case "e" refers to a mathematical expression. In effect.CHAPTER 10–Customizing a Model with Attributes and Expressions Writing Expressions In the previous section. Expressions accomplish simulation and modeling requirements that standard SIMPROCESS processing does not provide for. The instructions that you write to process attributes and SIMPROCESS model elements are called Expressions. In the definitions that follow. Next. Then we will explain how Expressions are implemented. An Expression is a user-defined routine that runs within the larger SIMPROCESS program. it runs the code you have written. and show you some examples. At the beginning of this chapter. SIMPROCESS checks at various points during a simulation run to see if you have written any special instructions for it. you must be able to refer to them and change them during a simulation run. If you have. Expression with a capital "E" refers to the SIMPROCESS Expressions feature. SIMPROCESS provides opportunities to do this at many points during a simulation. but the coding required for the examples in this section require just a few language elements. You can write complex Expressions in this language. We will begin by introducing you to elements of the SIMPROCESS Expression language needed to fulfill the examples in this section.

. Thus. assignWeight := 1000. DIV (integer division). One commonly-used function is SimTime. <> (not equal). which returns a Real number containing the current simulation time.Writing Expressions Operators • Assignment Operator The assignment operator is used to assign a value to an attribute: := For example: x := 15. System Methods • System methods are commands which result in a system action or return a value from the underlying system. You receive an error message if you omit it. <=. >=. Relational Operators include: =. the statement beginning: IF assignWeight = 1000.". The colon (:) preceding the equal sign (=) is required. -. Note that an equal sign without a preceding colon is used when comparing two values. /. * (multiplication). and MOD (modulus).. <. compares the value of attribute assignWeight to the number 1000. • • Literals Arithmetic Operators used in the SIMPROCESS Expression language are +. >. • A string of printable characters on a single line is enclosed in quotation marks: "The plain in Spain looks lovely in the rain. SIMPROCESS User’s Manual 235 .

WHILE. RETURN (possible return value) EXIT (with WHILE or FOR loops) OUTPUT In order to put a SIMPROCESS Expression together. You can include comments in your Expressions by enclosing them in curly brackets ({ }). Expression Language Statements: • IF condition {ELSIF condition} ELSE condition END IF.). 4. 3. etc. END. 2. • • • • • WHILE condition END WHILE. FOR expression TO|DOWNTO expression [BY expression] END FOR. All built-in language elements are in capital letters (IF. For example: {This is a comment} Do not end a comment line with a semicolon. Basic conditional logic has the form: 236 SIMPROCESS User’s Manual .CHAPTER 10–Customizing a Model with Attributes and Expressions • For a list of System Methods available in SIMPROCESS. you need to know the following about the language’s syntax: 1. Each Expression language statement ends with a semicolon (. The SIMPROCESS Expression language is case sensitive. An attribute named Applianceweight is not the same entity as the attribute referred to as applianceWeight.). 5. refer to page 393.

The OUTPUT statement has the form: OUTPUT(expression). This is useful for tracking the value of attributes as a simulation proceeds. ELSIF a < c x := d. batchWeight). For example: OUTPUT("Just assigned a weight to entity").Writing Expressions IF a < b x := c. the SIMPROCESS User’s Manual 237 . the value of attribute batchWeight is displayed following the text "Current batch weight ". ELSIF batchweight > 1800 maxBatchSize := 110. To do so. In the second example. You can display messages in the SIMPROCESS message window with the OUTPUT statement. OUTPUT("Current batch weight ". For instance. Using Attributes in Expressions The value of a attribute may be useful in the calculation of an expression on a construct of a different type than the attribute was defined for. batchWeight := 0. END IF. For example: IF batchweight > 2000 maxBatchSize := 100. END IF. The literal string and attribute name are separated by a comma. you may want the duration of a Delay Activity to take the value of an attribute on the Entity currently at the Delay Activity.

Similarly.CHAPTER 10–Customizing a Model with Attributes and Expressions expression on the activity must access the value of the attribute on the entity. This method is preferable. would be referred as: 238 SIMPROCESS User’s Manual . will take the value of the TimeFactor attribute.” beginning on page 241) on the Delay Activity. that each instance of the entity carries. This is accomplished by referring to the entity attribute with the prefix "Entity. see “Expression Activation Events. NextDelay. For more detail.Type. Using the duration example above. its processing time at that activity is determined by the value of the entity attribute. you could use the Evaluate function in the Duration Value field on the Delay Activity to return the value of the attribute TimeFactor. for an entity attribute called "TimeFactor". TimeFactor. it would be used in the expression of a construct other than an entity as: Entity. see the “Evaluate (Evl) Function” on page 240. for each instance of an entity reaching this activity.TimeFactor. An Activity Attribute called "ActivAttr" that is referenced in an expression on a construct other than an activity. as the fact that the Duration of each Entity at the Delay Activity is calculated from the TimeFactor attribute is visible on the Properties dialog of the Delay rather than in an expression. the format would be similar. the value of the system attribute. we can set the duration that each entity (that carries the TimeFactor attribute) will spend at a Delay Activity with the following statement: NextDelay := Entity. By placing the above statement in the "Accept Entity" activation event (for a listing of activation events. The result is.TypeTime The same holds true for attributes of other SIMPROCESS constructs as well." followed by the name of the entity attribute. If you are referencing an Entity Type Attribute. If the attribute to be referenced was named "TypeTime".

SIMPROCESS User’s Manual 239 . use: Resource("Resource1").ModAttr User-defined Resource Attributes are accessed by an expression from any other construct in SIMPROCESS.Writing Expressions Activity. For more detail. however. see “SIMPROCESS System Methods and Examples” on page 393. assign values to attributes of other SIMPROCESS constructs using the syntax described above.ActivAttr A Model Attribute called ModAttr would be referred to as: Model. This can be used to access the Resource System Attributes from the expression of another SIMPROCESS construct. to reference the number of units currently busy of a resource called. For instance. You also have access to Resource System Attributes using the Resource System Method. You can.UnitsBusy These are just some basics of the SIMPROCESS Expression language. in the expression on a Resource. Resource1.

From the Delay activity’s Properties dialog. Clicking the Detail button will open an Evaluate dialog where you enter the expression describing the processing time 240 SIMPROCESS User’s Manual . User-defined Attributes and Operators that are supported at the Activation Events level described in the next section. System Attributes. That expression can contain any of the System Methods. The Evl function can be found on any of the combo boxes where you find the standard distributions and User-defined Functions.CHAPTER 10–Customizing a Model with Attributes and Expressions Evaluate (Evl) Function The simplest use of an expression is with the Evl function. An example of where you would use the Evaluate function.0) function on the Hours field. select the Evl(1. is a system with a processing time (Delay) that is a function of an Entity Attribute. This function supports a single line expression.

Expression Activation Events Expression Activation Events SIMPROCESS has a set of activation points at which it checks for the existence of Expressions and runs those that it finds. You specify these in the User Expressions dialog box. The Start Trial and End Trial events occur once during each trial of a multi-trial simulation. the start of a simulation run is referred to as the Start Experiment event. For example. The Start Trial event marks the beginning of a single trial within a simulation. the Start Simulation event occurs just once at the beginning of the first replication. The End Simulation event occurs at the end of the last replication. Total Simulation Time Replication 1 InitSim Warm-up Period StartSim InitTrial Steady State Period TermTrial StopSim Replication 2 Replication 3 TermSim Some events can occur many times during a simulation. these events occur just once. SIMPROCESS User’s Manual 241 . and has a name identifying it to SIMPROCESS. The Start Simulation and End Simulation events occur once during each replication of a multireplication simulation if Reset System is selected in the Simulation Run Setting dialog box. You assign your Expression to an activation point at the time you define the Expression. If the simulation contains only a single trial. Otherwise. Each activation point corresponds to a simulation event.

CHAPTER 10–Customizing a Model with Attributes and Expressions Events related to entities and resources can occur numerous times throughout a simulation trial. specify the event at which you want this processing to occur. For example. This can occur thousands of times during a long simulation. You select the model element that requires customized processing. if you need to set the initial value of an attribute for an entity. describes this process in detail. you can do this when the entity is first generated 242 SIMPROCESS User’s Manual . “Example: Batching Entities Based on Weight” on page 247. and then write the Expression to do the processing. Activity Process Time Accept Entity GrabResource ReleaseResource ReleaseEntity Every Expression is associated with a specific SIMPROCESS model element. an entity’s arrival at an Activity is a simulation event called Accept Entity (so-called because the entity is being accepted into the Activity). Not every event is available as an activation point for every model element. For example. once for each entity that arrives at the Activity.

” on page 244. contains a complete list of activation events. “Expression Activation Events. SIMPROCESS User’s Manual 243 .Expression Activation Events (Initialize Entity) or when the entity is released from a Generate Activity (Release Entity). But you cannot set an entity attribute when the simulation first begins to run (Start Experiment). because no entities have been generated at that point. Table 2.

If Reset System is selected. Entity Instances. Dispose of Entity End Trial Dispose of an entity. Entity Instances. Entity Instances. Entity Types. Resources. Entity Types. Transform. 244 SIMPROCESS User’s Manual . it occurs at the beginning of each replication. Entity Types. before the warm-up period (if any). Entity Instances. Split. All Activities except Dispose. Resources. Beginning of a trial within the simulation. Get Resource Obtainment of a Resource by an Activity. and Assemble Activities. All Activities except Generate & Dispose. Start Trial Initialize Entity Accept Entity Arrival of an entity at an Activity. End of a simulation trial. This typically occurs in a Generate Activity. All Activities except Generate. All Activities. Release Entity Release of an entity from an Activity. Model Elements Active For All Activities. Resources. All Activities except Generate & Dispose. All Activities. Free Resource Release of a Resource by an Activity. Entity Types. Entity Types. Copy. after the warm-up period (if any). Creation (allocation) of an entity.CHAPTER 10–Customizing a Model with Attributes and Expressions Table 2: Expression Activation Events Event Name Start Simulation Activation Point (and Comments) The beginning of the first replication. but may also occur in the Batch.

Statistic collection for the trial ends at this point. Resources.Expression Activation Events Table 2: Expression Activation Events Event Name End Simulation Activation Point (and Comments) The end of a simulation trial. Model Elements Active For All Activities. SIMPROCESS User’s Manual 245 . Entity Types.

3. it will start from item 4. 4. Execute any Start Simulation expressions (attributes can be set to different values in these expressions). Otherwise. After a replication is complete. SIMPROCESS may reset attribute values for the next replication. If the Reset System option is selected in Run Settings. Attribute Definition Initialize attributes to the values that are specified in the dialog box. SIMPROCESS will : 1. SIMPROCESS will continue on the next replication starting from item 3. 2. Execute the reset system mechanism if the Reset System option is selected (reset attribute to the values specified in the Attribute Definition dialog box). 246 SIMPROCESS User’s Manual . The following procedure shows how SIMPROCESS sets attribute values along the simulation timeline. as listed above. When the simulation is started.CHAPTER 10–Customizing a Model with Attributes and Expressions Attribute Value Initialization User-defined Attributes can be initialized at several places in a SIMPROCESS model. Execute any Start Experiment expressions (attributes can be set to different values in these expressions if the Reset System option is not selected).

2. This takes place within a subprocess. and eventually make their way to a distribution center in the form of appliances. This is the Generate activity. an attribute that SIMPROCESS is not inherently aware of. Each appliance order is an entity. The model depicts the product distribution process of an appliance manufacturer. The orders are processed. 3. Assign values to the weight attributes. you perform the following in your model: 1. Appliance orders are received from customers. The details are irrelevant for this example. SIMPROCESS User’s Manual 247 . Here is a simplified view of the model: 1. 2. In order to accomplish the objective of releasing the batch when a certain weight is accumulated. 3.Example: Batching Entities Based on Weight Example: Batching Entities Based on Weight This example describes a method of releasing entities based on weight. Appliances are shipped to customers from the distribution center. Define attributes to represent the weight attribute of entities. Accumulate and track the weight of entities received at the Batch Activity. Shipments are released when the total weight of all appliances awaiting delivery reaches 5000 kilograms. a Batch Activity.

The points at which you need to activate your Expressions are: • • Entity initialization Receipt of the entity by an Activity Entities are initialized by SIMPROCESS at the Initialize Entity event.CHAPTER 10–Customizing a Model with Attributes and Expressions 4. Earlier in this chapter. batchWeight holds the accumulated weight of the entities received at the Batch activity (page 228). This can be done as soon as the entity is created. you can start writing the Expressions you need. and prevent the release of entities otherwise. Initializing Entity Attributes First. Trigger the release of entities if a specified weight is reached. you add its weight to a running total and compare this total to the maximum allowable weight. we listed the steps required to define two attributes that can be used in this model: • • applianceWeight contains the weight of an entity (see page 221). you need to assign a value to the applianceWeight of each entity generated during a simulation. Initialize Entity Accept Entity 248 SIMPROCESS User’s Manual . With these attributes defined. Then. when the entity reaches the Batch Activity. Entities are received by an Activity at the Accept Entity event.

g. SIMPROCESS User’s Manual 249 . select Entities. applianceWeight := 1000) to be executed when the entity is first generated (the Initialize Entity event): 1. and then press Edit. 2. Start by selecting the first entity on the list. This model contains three entity types.Example: Batching Entities Based on Weight Defining the Expression at Entity Initialization To assign an initial value to an entity’s applianceWeight. The Expression is a single assignment statement (e. you can define an Expression for each type of entity in your model. You must define an Expression for each entity.. From the Define pull-down menu.

When you are finished. You need to add just one line to the file: applianceWeight := 1000. 7. The event for which you’re defining an Expression is Initialize Entity. click on Close. Four simulation events are listed in the User Expressions list box. SIMPROCESS assigns a name to the file when it saves it. 6. 4. Then click on Expressions. Follow the same procedure for each of the entities in your model. This assigns a value of 1000 to applianceWeight. Highlight Initialize Entity and click on Edit.CHAPTER 10–Customizing a Model with Attributes and Expressions 3. These are the points during the simulation at which SIMPROCESS checks for Expressions which apply to entity instances. You need to initialize every refrigerator-order entity that is generated. 8. Close the editor. 250 SIMPROCESS User’s Manual . so under Define Attributes or Expressions For select Entity Instance. 5. but assign them different weights. and then OK. SIMPROCESS invokes your editor and opens a new file. which is the point at which an entity is first generated (initialized). Assign a weight of 100 to television-order and 10 to toaster-order.

You could have many different types of entities. You need to define Expressions for each type of entity. all entities are generated by a single Generate Activity. This is the most efficient way to proceed. activating it whenever an entity is released (Release Entity event). One Expression handles the initialization of any entity’s applianceWeight. it requires only a single statement in each Expression. You do not need to assign a weight to your entities as soon as they are created. In this model. Double-click on the RECEIVE-ORDERS Activity. You just have to make sure a weight is assigned before the entity reaches the Batch Activity where appliances are distributed (DISTRIBUTE-ORDERS). too. 2. Seven simulation events are listed in the User Expressions list box. 1.Example: Batching Entities Based on Weight Defining the Expression When an Entity Is Released The method described above works fine to initialize the applianceWeight attribute of entities. and defining an Expression for each is tedious and time-consuming. The first three. It’s fairly simple. click on Expressions. There are other options. and SIMPROCESS User’s Manual 251 . In the Generate Activity Properties dialog box. Start Simulation. So you can define an Expression in the Generate Activity. But it is redundant. Start Experiment.

and then OK. Close the editor.Name = "televisionorder" Entity.applianceWeight := 10. Unlike other attributes. Click on Close. The name identifies the type of entity. Release Entity serves our purpose.CHAPTER 10–Customizing a Model with Attributes and Expressions Start Trial all occur before any entities are generated. These instructions check the name of the entity being released at the activity. you needed to identify the type of entity being released by the Generate activity. For instance: Entity. But a Name attribute also identifies resources and activities. so highlight it and click on Edit.Name refers to an object.Name = "refrigeratororder" Entity. Enter the following lines in your text file: IF Entity. you are not interested in the value of the object. 5. So 252 SIMPROCESS User’s Manual .applianceWeight := 5000. and an attribute. 3. A value is assigned to applianceWeight based on the entity type. An object attribute leads SIMPROCESS to the model element whose attributes you are interested in. ELSIF Entity. Using Object Attributes in Expressions The code in the previous example uses an Expression language construct we refer to as a qualified reference. named Entity. The System Attribute Name identifies the entity type. you only use it to obtain the value of its system or user attributes. SIMPROCESS names the file before saving it. END IF. Name. ELSE Entity. 4.applianceWeight := 100. In step 3.

applianceWeight was specifically defined as an attribute of entities. and an unqualified reference to applianceWeight results in an error. But in fact. Now. Note that an unqualified reference to the attribute Name refers to the name of the current model element.Name returns the name "RECEIVE-ORDERS. That is where object attributes come in. They identify the model element you are interested in. SIMPROCESS User’s Manual 253 . RECEIVE-ORDERS.Name returns the type name of the entity instance being processed at the RECEIVE-ORDERS activity. An attribute called Self points at the current model element. the model element the expression has been invoked from. So Entity. In fact. the current model element is the Generate Activity. SIMPROCESS assumes you are referring to the model element that called the Expression (the RECEIVE-ORDERS Activity). while Self. that is. that it can only refer to one thing. you must use an object attribute to qualify your reference to applianceWeight. There is no attribute named applianceWeight associated with this activity. In this case. So you might think that any reference to this attribute would be unmistakable." A qualified reference is also employed to set the User Defined Attribute applianceWeight: Entity.applianceWeight := 5000. SIMPROCESS assumes you are referring to an attribute of the current model element. • • The Entity object attribute tells SIMPROCESS to look at the entity being processed in the current activity.Example: Batching Entities Based on Weight referring to Name alone is ambiguous. you do not have to qualify the attribute. RECEIVE-ORDERS: it is the model element which invoked the expression. That is because without specifying a qualifier. If that is the attribute you are interested in.

In the Batch Activity Properties dialog box. 254 SIMPROCESS User’s Manual . END IF. There are ten activation events listed in the User Expressions list box for a Batch Activity. OUTPUT("Batch weight is ". batchWeight).CHAPTER 10–Customizing a Model with Attributes and Expressions Releasing Entities Based on Weight You need to write two more Expressions to complete the model. In the first Expression.applianceWeight. 2. Double-click on the DISTRIBUTE-ORDERS Activity. 4. click on Expressions. you check the weight of the entities received at the batch activity. and trigger their release if the weight reaches a certain number: 1. IF batchWeight>=5000 MaxBatchSize := NumberIn. batchWeight := 0. so highlight this event and click on Edit. Insert the following code: batchWeight:=batchWeight+ Entity. 3. Accept Entity occurs when an entity arrives at the activity.

the batchWeight attribute is reset to zero. In the User Expressions dialog box. Enter the following statement: MaxBatchSize := 100000. The maximum batch size must be reset again after the entities are released. so to prevent that. SIMPROCESS User’s Manual 255 . The OUTPUT statement in the Expression is there as an example of displaying information in the message dialog. The model should now be ready to run. You could easily reach the current MaxBatchSize again. There is one more thing this model needs. If the total weight exceeds 5000. As it stands now. Close your editor. Only accumulating 5000 kilos of weight should trigger release. 3. You can intersperse OUTPUT statements in your Expressions in order to trace events during a simulation. Press Edit. 2. It is not needed by the model. With the Activity about to be emptied of entities. Close the editor. This was done to force a release of entities when batchWeight reached 5000 kilos. You do not want entities to be released when the DISTRIBUTE-ORDER batch reaches a certain number. a batch release is triggered by resetting MaxBatchSize. MaxBatchSize is set to the size of the previous batch accumulated at the activity. 5. This is the event where the entities are released from the batch activity. you can verify that the batch is really released when the weight exceeds 5000. for instance. By displaying the value of batchWeight. reset this attribute to a number you can not possibly reach before accumulating 5000 kilos of weight: 1. select Release Entity. the weight of the just-received entity is added to the total weight of all entities received. the attribute that sets the maximum number of entities that can be held in the batch.Example: Batching Entities Based on Weight In this Expression.

Another alternative involves defining the applianceWeight attribute for entity types instead of entity instances.g.Type. cables and remote control for a television). the entity’s weight would be referenced as: Entity. Every refrigerator-order was assigned a weight of 5000. 256 SIMPROCESS User’s Manual . but there are alternative approaches you can take. We could have just as easily defined an applianceWeight attribute for each entity type. 100. In this example. in the Expression defined at Accept Entity for the DISTRIBUTE-ORDERS Activity. etc.. In that case. The assigned weights remained unchanged during the course of the simulation. which you cannot do if the attribute belongs to the entity’s type. But suppose that the weight of an order could be affected by some step in the process being modeled. Then.applianceWeight This would have worked fine in the model we built. and you needed to reflect this. For example. we defined a weight attribute for every entity instance in the model. You already saw a couple of alternatives described for initializing the value of the applianceWeight attribute (“Defining the Expression at Entity Initialization” on page 249 versus “Defining the Expression When an Entity Is Released” on page 251). attaching the applianceWeight attribute to each entity instance allows you to vary the weight of each television-order. as there often are when building models in SIMPROCESS.CHAPTER 10–Customizing a Model with Attributes and Expressions An Alternative Method Using Entity Types This example works fine. a customer order could include accessories for an appliance (e. every television-order. adding to the weight of the order. and initialized it at the Start Experiment event.

The Name that you chose for the User-defined Function will appear in every combo box of every activity in your model that a statistical distribution can be entered. This lets you re-use a single function in multiple places in your model. the Function Definition dialog box will open. Here you can type in a meaningful Name for the function.Time and Activity. This opens a list box displaying any previously defined functions. The final line of the expression should be a RETURN statement such as: RETURN (Entity.Factor are attributes. Each time this function is called. If you Add a new function. The Expression button will open up Notepad as you would for any SIMPROCESS Expression. Type in your expression here. where Entity. and select Functions. or Edit an existing one. it will return the value of the multiple of the two attributes.Factor).Time * Activity. To create a User-defined Function. go to the Define menu.User-Defined Functions User-Defined Functions A User-defined Function will return the value of an expression each time it is called from within the model. SIMPROCESS User’s Manual 257 .

The dialog is invoked by selecting a text tool from the Palette (marked by a capital T) and then clicking on the background in the location where text is to be placed (text can be moved afterwards by clicking and dragging just like any icon). The way to update dynamic labels is through an UpdateDynamicLabel method in the expression builder. Properties of both kinds of text are specified in the Background Text dialog.CHAPTER 10–Customizing a Model with Attributes and Expressions Dynamic Labels There are two types of background text in SIMPROCESS: static text and dynamic labels. are updated during simulation and are used to display information about changing properties of model elements. designated as Dynamic Label Properties is only applicable to dynamic text. Static text is used for annotating the model layout and does not change during simulation. Dynamic labels. the bottom group — Font Attributes — is used to specify properties of both kinds of text. as their name implies. 258 SIMPROCESS User’s Manual . The dialog is divided into two sections: the top group of controls.

only 90 degree rotations of the text are allowed. If the Width is greater than the valued being displayed. For native fonts. Precision specifies the number of digits after the decimal point that will be displayed. It will only be used to reference the label from the expression builder. Align and V. you can specify text color and angle in the Background Text dialog. The only way to resize native font text is to change its point size in the Fonts dialog. integer and real is made in the Mode combo box. in addition to its font attributes. unless two dynamic labels have the same name. For example. Native fonts are supplied by the operating system on which you are running. SIMPROCESS system fonts are vector fonts. You also need to choose the type of value with which the dynamic label will be updated. The Set… button will become disabled. Once the font is chosen and the Fonts dialog is closed. but you can still set the color and angle of the text. The name typed into the Name text box will not appear on the layout. In order to choose a native font. Note that once the text is placed on the layout. select Native in the Font combo box and click on the Set… button. SIMPROCESS User’s Manual 259 . which means they can be scaled on the layout by dragging the handles that appear on the selection box around the text. The preview of the text will appear in the Sample box to help you quickly choose the desired attributes. you also need to specify Width and Precision in the corresponding value boxes. Vector fonts are created by choosing anything other than Native in the Font combo box. Native font properties are specified in an operating system’s Fonts dialog. Each dynamic label must have a unique combination of Name and Id number. You can move the text. Width is the total number of digits that will be shown for the displayed value (including the decimal point). Align combo boxes. in Microsoft Windows you can choose font name. Usually. If you are placing a dynamic label on the layout. the selection box around it has no handles.Dynamic Labels SIMPROCESS provides two types of fonts: native and system. it will be padded with spaces on the left side. appropriate information needs to be entered in the Dynamic Label Properties group. The choice between string. but you cannot resize the text by dragging its selection box. Note that vector fonts can be rotated by all angles defined in the combo box. Id number will be 0. Several text labels can be grouped together on the layout and their horizontal and vertical alignment can be set in the H. style and point size. edit its properties and group it with other objects on the layout. If the value of the dynamic label is real.

as well as a real value showing the amount of time this instance of an entity spent at the activity and an integer showing number of entities currently at that activity. you can enter the following three commands in the expression builder of the delay activity at the Release Entity entry point: 260 SIMPROCESS User’s Manual . there will be no place holder for the dynamic label on the layout after you close the dialog. A list of color names is found in “SIMPROCESS System Methods and Examples. value — integer. name — a string (in quotes) you used to designate the dynamic label in the Name text box of Background Text dialog. This method requires the following five arguments in this order: MasterEditor — (typed as shown). As with name. letter case must be as shown in the table. real or string value that you want to display. ID number — an integer you designated in the Id box of the Background Text dialog.” beginning on page 393.CHAPTER 10–Customizing a Model with Attributes and Expressions Although it is not necessary. Static label makes it simpler to find the dynamic label location and provides a description of the value being updated. You can still find this label by dragging a rubber band box in the selection mode around the area where you placed it. we suggest that you add a static label to the dynamic label definition. A very small selection box may appear at the location of the label. it can be updated by making a function call to UpdateDynamicLabelMethod in the expression builder. reference to the main layout window. Make sure letter case is the same in both places. If you do not. For example. You can then edit its properties by choosing Edit/Properties off the menu. if you would like to display a string showing the name of the entity leaving a delay activity. Once the dynamic label is defined. text color — a string (in quotes) of the color in which you want the text to appear. type must correspond to what you chose in the Mode combo box of the Background Text dialog. The static label is not replaced when dynamic value is updated: dynamic label appears to the right of the static.

Dynamic Labels

UpdateDynamicLabel (MasterEditor,"num",0,"Orange", NumberIn); UpdateDynamicLabel(MasterEditor,"name",0, "Aquamarine",Entity.Name); UpdateDynamicLabel(MasterEditor, "lastdelay",0,"IndianRed",LastDelay); For more information on expression builder terminology and syntax, see “SIMPROCESS System Methods and Examples,” beginning on page 393. Note that both dynamic and static text font attributes can be changed during simulation by selecting the text and editing its properties. The change will take effect immediately after the Background Text dialog is closed and the simulation is resumed.

SIMPROCESS User’s Manual

261

CHAPTER 10–Customizing a Model with Attributes and Expressions

Summary
This chapter described how attributes are used in SIMPROCESS, and introduced Expression processing with a step-by-step example. You learned the following:

• • • •

Attributes are variables of model elements whose value can change during a simulation run. System attributes are those built-in to SIMPROCESS. User Defined Attributes are custom-defined by users. Object attributes identify the model element whose attribute you are referencing. Globally-defined user attributes are created for every model element of the same class (activities, resources, etc.). Locally-defined attributes apply only to a single type of an model element. Expressions are user-written procedures which are invoked by SIMPROCESS at various events during a simulation run. The language used to code Expressions is a subset of the MODSIM simulation language. An introduction to the basics of this language begin on page 234. Object attributes are used in Expressions to qualify attribute references. Numerous System Methods are available to add functions to your Expressions.

• •

262

SIMPROCESS User’s Manual

CHAPTER 11

More Advanced Model Building

SIMPROCESS User’s Manual

263

CHAPTER 11–More Advanced Model Building

Defining a More Complex Generate Activity
A Generate activity generates different types of entities, or it can vary the schedule of entity generation for a single entity type. Specifying the Active Period of Entity Release You can limit the period that your entity release schedule is in effect by specifying Release Start and End dates. To do this, click on the Start/ End button and specify the Start and End dates in the dialog.

If you specify Start and End dates, the Generate activity will not produce entities outside of that time period. The Start and End dates work in conjunction with the Start Date and End Date of a simulation run. So keep in mind that, if the simulation run dates are entirely outside of the period defined for the Generate release schedule, no entities are generated during that simulation. If you do not specify a Generation Start date, SIMPROCESS sets the Start time to correspond to simulation start time. Similarly, if Generation End date is blank, it defaults to the simulation end time. So leaving the Generation Start/End fields blank insures that the schedule is in effect for the entire simulation run.

264

SIMPROCESS User’s Manual

Defining a More Complex Generate Activity

Defining Schedules for a Generate Activity
The Generate schedule identifies the entity-generation pattern defined for an activity. When you define a new schedule item, it is added to the Schedule list box:

Each Schedule identifies an entity generation pattern of a specific type:

• • • •

Periodic: A periodic schedule generates a specified quantity of entities at the end of a specified time period. Calendar: Cyclical: File:

Generates entities according to a calendar schedule; weekly, monthly, etc. A detailed pattern of when entities are generated. A schedule defined in an external file.

The basic Generate Activity that we saw earlier was just a simple case of a periodic schedule. For such simple cases, the Interval, Quantity, and Entity Type can be specified on the main dialog. The Interval field on the main dialog is not available if you have more than one schedule or a schedule that is not periodic. Schedules are processed in parallel. If you define two schedules that overlap in time, SIMPROCESS processes both simultaneously. Click on Add to define a new schedule, or Edit to change the definition of the item highlighted in the schedules list box. When adding a new schedule, first identify the type of entity generation pattern by selecting from the Schedule Type combo box.

SIMPROCESS User’s Manual

265

CHAPTER 11–More Advanced Model Building

Copy duplicates the definition of the item highlighted in the Schedule

list box. Use this when you need to define two or more similar schedules.
Remove

deletes the highlighted schedule.

Adding a Periodic Schedule
The periodic schedule defines a constant or statistical distribution of entity generation events per period:

The Periodic Schedule dialog box contains the following items:
Schedule Assign a meaningful name to the entity generation schedule you are defining. The default name assigned by SIMPROCESS is the same as the schedule type; in this case, Periodic1. For this example, we will define a generation schedule based on an exponential distribution of entities and name the item Exponential. Entity specifies the type of entity to be generated by this schedule. Use default tells

SIMPROCESS to generate the type of entity indicated in the Generate Activity Properties dialog box. To specify a different type, click on the pull-down arrow for a list of entity types to choose from.

is the number of entities to be produced at each entity generation by this schedule. Again, use default refers back to the value in the Generate Activity Properties dialog box. See page 62
Quantity

266

SIMPROCESS User’s Manual

Defining a More Complex Generate Activity

of the SIMPROCESS User’s Manual for additional details on this field.
Interval defines the time between entity-generation events for this Activity Properties

schedule. Use default refers back to the value in the Generate dialog box.

Schedule Start and End define the effective period for this schedule. The times in the Start and End fields apply just to this schedule and supersede the Start and End dates specified on the Generate Activity Properties dialog box. If you do not enter a date for either Start or End, the corresponding value in the Generate Activity Properties applies.
Count Limit sets the maximum number of entities that can be generated by this schedule. A Count Limit value of 0 indicates that there is no limit.

If the Count Limit is reached, the Generate activity may stop generating entities for this schedule. This depends on the setting of the Both must be reached and Generation End fields.
Both must be reached, if marked, specifies that both the Count Limit and Release End date must be attained in order to terminate entity generation for this schedule. If the Both must be reached field is not marked, then reaching either Generation End or Count Limit terminates the schedule.

Adding a Calendar Schedule
To add a schedule that generates entities based on the calendar, select Calendar under Schedule Type on the Generate Activity Properties dialog box, and then click on Add:

SIMPROCESS User’s Manual

267

CHAPTER 11–More Advanced Model Building

You can specify the following types of entity-generation schedules in the Calendar Schedule dialog box:

• • • • •

Yearly - Entities are generated once every year, on a particular

date.
Monthly - Entities are generated on a specific day in each month (e.g., 1st of the month). Weekly - A certain time of day, on the specified day of the week (e.g., Monday, Tuesday...) Daily Date

- Every day, generated at the specified time. - A specific date and time.

The Calendar Schedule dialog box changes in appearance depending on the Type of schedule selected:

• •

If Calendar Type is Weekly, a list of the days of the week is activated to let you select a day from the list. The heading above the Date and Time field changes to prompt you for the information required for the Type schedule you selected.

268

SIMPROCESS User’s Manual

A cycle within a cycle. the various periods within a single day — breakfast. i. coffee break. such as the date and year. A constant or statistical distribution defining the time interval between events. But unlike the schedules defined for the Generate Activity as a whole. is ignored. You can define a unique period such as the holiday rush leading up to Christmas.Defining a More Complex Generate Activity For example. weekly.g. For example. You can define the following types of cycles: • • • • • Periodic. A cyclical schedule is defined as a series of cycles. It is up to you to schedule the cycles so that one follows another. not in parallel. Each cycle describes a different entity generation pattern. monthly. or a year. Defining Cyclical Schedules Use the cyclical schedule to define a detailed pattern of entity generation cycles. you might describe a week. cycle events are processed sequentially. that is. meeting. a more detailed breakdown within a schedule (e. SIMPROCESS User’s Manual 269 . A period where no entities are generated. lunch — within a workweek described day-by-day). You can elect to have SIMPROCESS repeat cycles as often as you want.. you must enter a time of day in the Date and Time field. Single Event. Cyclical. Entity generation events scheduled at intervals based on the calendar. In a sense. if you specify a Daily entity generation schedule. day by day. Calendar. the cycle series is like an a schedule of its own. etc..e. where entity generation behavior differs markedly from the rest of the year. No Event. you can use the Generation Start and Generation End dates to further define the effective period for a Calendar generation schedule. A one-time entity generation event. Any information that does not apply to a Daily schedule. As with all schedules. month by month.

But you can rearrange the pattern using the Move command. SIMPROCESS places it at the end of the list.CHAPTER 11–More Advanced Model Building Cycles are added to and modified from the Cyclical Schedule dialog box. When you add a cycle. 270 SIMPROCESS User’s Manual . The events are listed in the order in which SIMPROCESS will execute them. The Sequence of Events dialog box lists the cycle events defined for this cyclical schedule.

Do not confuse the number of repetitions with the number of passes through the list. Each click of Move shifts the item down a row. If you check the box labeled Infinite. You can also move cycles up in the list by checking off the Upwards option before clicking the Move button. Repeat Sequence tells SIMPROCESS how many times to repeat execution of the Pattern of cycles. Note about Repeat Sequence A value of 0 in the Repeat Sequence field tells SIMPROCESS to run through the list a single time. without repeating it. A value of 1 results in two passes through the Sequence of Events: the initial run-through and one repetition. highlight April and click on the Move button three times. SIMPROCESS User’s Manual 271 . here is a list of cycles defined out of sequence: To move the April cycle to the end of the list. SIMPROCESS will keep repeating the cycle pattern until Generation End is reached.Defining a More Complex Generate Activity For example.

You can enter the number of hours or select a value from the pull-down list for this field. select Periodic from the list of Schedule types. To define a periodic cycle in a cyclical schedule. The major difference is that you do not define the duration of the cycle in terms of start and end dates. Defining a Periodic Cycle A periodic cycle defines a constant or statistical distribution of entity generation events. The Duration of the cycles that precede this one. That is because the start time is under the control of the cyclical schedule of which the cycle is a part: Duration is how long this cycle is in effect. The position of this cycle in the Schedule of Events in the Cyclical Schedule detail dialog box. and then click on Add: Defining a periodic cycle is similar to defining a periodic schedule (see page 266). The starting time of the event is determined by the following factors: • • • The Generation Start date of the cyclical schedule.CHAPTER 11–More Advanced Model Building Refer to page 267 for descriptions of the Generation Start and Release End. Count Limit. 272 SIMPROCESS User’s Manual . and Both must be reached options.

specifies that both the Duration and Count Limit must be reached before the cycle completes. if marked. Defining a Calendar Cycle A calendar cycle defines entity generation events that repeat on either a daily. Quantity. SIMPROCESS will keep repeating the cycle until the schedule’s Generation End date is reached. A value of 0 indicates no limit. A value of 1 indicates two passes (one repetition in addition to the initial execution of the cycle). In that event. or yearly basis: SIMPROCESS User’s Manual 273 . the cycle continues until either the Count Limit is attained. and Interval fields are used the same way they are in the Periodic Schedule detail dialog (see page 266). • The Entity. weekly. The Both must be reached checkbox. Repeat Event tells SIMPROCESS how many times to repeat execution of this cycle. This happens if the Count Limit is not reached before the end of the Duration period. or the Generate Activity Generation End is reached. monthly. To reiterate a point made earlier about a Repeat field: do not confuse the number of repetitions with the number of passes through this item. If you check off the box labeled Infinite. Note that selecting Both must be reached can result in a cycle of unknown duration. A Repeat Event value of 0 results in one pass through the cycle and zero repetitions of that pass.Defining a More Complex Generate Activity Count Limit sets a maximum number of entities that may be generated during this cycle.

Entity generation begins if the simulation reaches the specified day and time while the cycle is in effect. Type The Date and Time value you need to supply depends on the Calendar schedule selected: • • Yearly.m. beginning at 9 a. and each iteration will last 24 hours. the start time of a calendrical event is determined by the cyclical schedule in which the cycle is defined. For a further explanation. However. but do not specify a year. Specify a day of the month and time of day. when people are rushing to buy gifts for their loved ones. entity generation is not triggered until the time you indicate in the Date and Time field. If the trigger point is not reached while the cycle is in effect. the first of the month. As with the periodic cycle. Enter a date and time of day.CHAPTER 11–More Advanced Model Building The dialog box above shows a calendar cycle representing four days leading up to a festive holiday. Monthly. Entity generation begins if the simulation reaches the specified date and time during this cycle. at noon. see “SIMPROCESS’ Scheduling of Event Cycles” on page 275. It’s a daily schedule. no entities are generated. e..g. 274 SIMPROCESS User’s Manual .

It checks the Date and Time value (which is set to the 2nd of the month. January 1. no entities are generated by this cycle. 1995. At this point it is midnight. The calendar cycle lasts for a week. • Daily. ending on January 10th. with a duration of 48 hours. What happens during this period? No entities are generated during the calendrical event. SIMPROCESS acts on the calendrical cycle. The periodic cycle starts right away and lasts for 48 hours. On January 3rd of simulation time. Entity generation begins if the simulation reaches that day and time during the cycle. For example. SIMPROCESS User’s Manual 275 . SIMPROCESS invokes the next item in the Schedule of Events cycles. entity generation may not occur. SIMPROCESS determines that the trigger date has already passed. with a Generation Start date of January 1. and the calendar cycle is implemented. and a Generation End date of March 31. at midnight) and compares it to the current date. SIMPROCESS’ Scheduling of Event Cycles Calendar cycles must be carefully placed within the Sequence of Events. 2. Entities are released if the simulation reaches this time of day while the cycle is in effect. Specify a time of day. Then you run a simulation which begins at midnight. Here is why: 1. The schedule contains the following Schedule of Events cycles: • • A periodic cycle event beginning on January 1. 3. on the 2nd of the month. and a time of day. for a duration of one week. The next possible trigger point is on February 2nd. say you define a cyclical schedule. If the trigger time you specify in the Date and Time field has already passed when SIMPROCESS invokes a cycle. Since the next possible trigger point is not reached during this period. A calendar cycle which is triggered monthly. and bypasses entity generation. Select a day of the week (from a list that appears when Weekly is checked off). 1995.Defining a More Complex Generate Activity • Weekly. January 3rd.

CHAPTER 11–More Advanced Model Building

If the duration of the calendar cycle were set to one month, the event would still be in effect on February 2nd and entities would be released at that point. Defining a Single Event cycle A Single Event cycle describes a one-time entity generation event:

You specify the same parameters for a single event as you do for a calendar cycle, except that you cannot specify when the event begins. A single event’s starting date and time is dependent on the cycles that precede it in the Pattern of cycles. Defining Inactive Time Periods The No Event cycle defines a period of time during which no entities are generated (for example, a holiday or weekend). The period of inactivity begins at whatever time SIMPROCESS invokes the No Event cycle.

Defining Specific Entity Generation Events in a File
You can tell SIMPROCESS to release entities by defining specific entity generation events in an event file. An event file is one that you create with a text editor or some other means independent of SIMPROCESS (such as a program that you or someone else has written). With an event file, you can run a simulation using data that you have captured outside of SIMPROCESS.

276

SIMPROCESS User’s Manual

Defining a More Complex Generate Activity

For example, most mail order businesses use computer systems to track customer sales information. This information is stored in some kind of data base. You can extract the information from the database and define a series of entity generation events that precisely matches customer activity for an actual day, week, month, etc. Each record in an event file defines one entity generation event. To learn how to define entity generation events, see Appendix G– External Event Files, on page 419. Use the External File schedule to identify an event input file to SIMPROCESS:

To identify the event file, click on the Browse button to the right of the Event File box. Use the resulting dialog box to find and select your file. The Read Event File button causes SIMPROCESS to read the event file, checking for syntax errors and building a list of the entity types referred to in the file. You must click on the Read Event File button to complete the definition of the event file. Identifying Entity Types to be Generated An event file can contain records referring to many different entity types. An event record can even refer to a type of entity that has not

SIMPROCESS User’s Manual

277

CHAPTER 11–More Advanced Model Building

yet been defined in the model. Using the External File Schedule Properties dialog, you can specify precisely which entity types you want SIMPROCESS to generate during simulation. Select the Generate Entities option that indicates which of the entity types referenced in the event file are to be generated:

• •

Defined in the model tells SIMPROCESS to generate entities

for every event record that specifies an entity type already defined in the model.
Selected in the list tells SIMPROCESS to generate entities only for the types highlighted in the entity type list.

If the event file refers to an entity type that is not defined in the model, it flags the type name. For example: New Entity (add: type)

If you select this type, SIMPROCESS will add the entity type to your model when you run a simulation.

To select the entity types to be used:

• •

Highlight the listed type name. To highlight several types, press and hold the Ctrl key while you click on each item. To deselect a type, click on it again while pressing the Ctrl key.

Generate Activity Summary
The Generate activity generates the entities that are processed in a SIMPROCESS simulation: The number of entities generated at each generation event, and the frequency of entity generation events, may be expressed as either constant numbers or statistical distributions. You can define a schedule of discrete entity generation events.

278

SIMPROCESS User’s Manual

Defining a More Complex Generate Activity

Schedules are classified as:

• • • •

Periodic: A constant or statistical distribution of generation events per hour. Calendar: Weekly, monthly, etc. events. Cyclical: A detailed pattern of generation events. File: A schedule defined in an external file.

Cyclical schedules are further broken down into cycles, each of which describes a different entity generation event. Cycle events are processed sequentially. This differs from other Generate schedules, which are processed in parallel.

SIMPROCESS User’s Manual

279

CHAPTER 11–More Advanced Model Building

Downtime Schedule of Resources
The Downtime option manages a resource’s schedule of unavailability.

All schedules in the Schedule list box are active only between the times specified in the Start and End fields.

Dialog Box Field Definitions • • •
Start specifies the earliest time that the resource’s downtime

schedules are in effect. This field uses a MM/DD/YY HH:MM:SS format.
End is the time beyond which the downtime schedules are not applicable. The MM/DD/YY HH:MM:SS format is used. After this time, the resource is available.

The Schedules list box identifies the downtime periods defined for this resource. When you define a new downtime period, it is added to this list.

Next to the Add button for the Schedule list box is a combo box containing the available downtime schedule types.

Schedule Type.

A Periodic schedule of downtime is one that occurs at intervals of time, specified in hours. The interval may be fixed (every n hours) or random (sampled from a statistical distribution).

280

SIMPROCESS User’s Manual

Downtime Schedule of Resources

The remaining Schedule Types are calendar-based, with downtime occurring on particular dates or days of the week, time of day, etc. Types are:
Yearly

- Every year, on a particular date and time. - A specific day in each month (e.g., 1st of the

Monthly

month).
Weekly - A certain time of day, on the specified day of the week (e.g., Monday, Tuesday...) Daily

- Every day, beginning at the specified time. - Every hour, beginning at n minutes past the hour. - A specific date, in a specific year.

Hourly Dates

When you add a new downtime schedule or edit an existing one, you will enter a dialog that contains the parameters for that downtime schedule type. The Downtime Schedule dialog box changes in appearance depending on the Schedule Type selected:

• •

If Schedule Type is periodic, the downtime occurs at intervals of time indicated in the Time Between Downtimes field. The field labeled Time Between Downtimes changes to Downtime Start for all schedule types other than Periodic. For Time Between Downtimes, you specify a statistical distribution or constant. For Downtime Start, you specify a date and/or time. If Schedule Type is Weekly, a list of the days of the week appears. You select a day from this list.

SIMPROCESS User’s Manual

281

CHAPTER 11–More Advanced Model Building

• •

Schedule Name is the name assigned to the downtime period.

This name appears in the Downtime list box.
Downtime Start or Time Between Downtimes defines the time

at which the resource becomes unavailable. For Periodic schedules, this field is labeled Time Between
Downtimes and contains either a statistical distribution or a

constant. If you specify a distribution, the resource will be unavailable at random intervals based on the distribution sampling. If you specify a constant, the resource enters a period of Downtime every n hours. For example, if you want to model a dayshift that works from 9 am to 5 pm and is off the rest of the day, you would specify 24 in this field. This means that every 24 hours (i.e., every day at 5 pm) the resource becomes unavailable. For all other schedules this field is labeled Downtime Start and contains a date and/or time. Date is specified as a 2-digit month, 2-digit day, and 4-digit year. Time-of-day ranges from 0 to 2400 hours. Downtime of the resource begins at the time specified.

• •

Number of Units Down is the amount

of capacity units to be

made unavailable.
Downtime Duration is the length of time, expressed in hours,

that the resource is unavailable. In the above daytime shift example you would specify 16 in this field. 282 SIMPROCESS User’s Manual

Downtime Schedule of Resources

Planned specifies that the period of unavailability is planned. For example, a vacation may be planned, whereas sick time is not planned.

Creating a Downtime Schedule
To demonstrate the creation of a downtime schedule, we will define some of the periods during which a sales clerk is not available for work. We will account for:

• • •

Daily off-hours (the 16 hours of each 24-hour day that a person is not scheduled to work). Weekends. Sick days.

In a complete model, you would also account for lunch hours, vacation time and unplanned time off (jury duty, personal days, acts of nature, etc.). For this example, assume that sales clerks operate in two shifts. The first shift, composed of 3 clerks, works from 9 to 5. The second shift, consisting of 2 clerks, works from 2 to 10. 1. If you do not already have a Resource dialog box displayed, click on the Define menu bar item, and then select Resources... Select Clerks from the list of resources, and then click on Edit. Click on Downtime.

SIMPROCESS User’s Manual

283

CHAPTER 11–More Advanced Model Building 2. 1995. 1995. These dates indicate the period during which the Downtime schedule applies. If the Start date for the simulation run is January 1. Keep in mind that. the downtime schedule is only in effect for part of the simulation (January 1 through January 31). We will define the period to include the entire month of January in 1995: The Start and End dates are used in conjunction with the Start Date and End Date of a simulation run (see “Run Settings” on page 77). and the End date is February 28. the downtime schedule will not apply to that simulation. Set the Start and End dates. the downtime schedule will be in effect for the entire duration of the simulation run. In this example: If the Start and End dates are the same as the Start and End simulation run dates. if the simulation run dates are entirely outside of the period defined for the downtime schedule. 284 SIMPROCESS User’s Manual .

enter the number 3. the following day: Schedule Name can be anything you want to call this period of time. so they are unavailable from 5:00 p. OffShift1 is added to the Schedule list. For Schedule Type. the number of hours between the end of one work day and the beginning of the next. For Downtime Starts (the starting time of the downtime period).m. select Daily and then select Add. Downtime Duration is 16. Click on OK when you complete this definition. We will call it OffShift1. Unavailability occurs at regularly scheduled times. Their weekday work shift is from 9 to 5. to 9:00 a. so 3 of the 5 will be unavailable during the period we are identifying. 5 p. SIMPROCESS User’s Manual 285 .). and 0 under MM and SS.0. Define the daily hours during which Shift 1 workers do not work. so select Planned. In the Number of Units Down field.Downtime Schedule of Resources 3. Remember that the resource Units of Clerks is 5. This is the number of clerks on Shift 1. enter 17 under HH (1700 hours.m.m.

Define the off-shift period for the two Shift 2 workers. Add another daily downtime schedule. Number of Units Down to 2. In the Number of Units Down. a list box with the days of the week is on the Weekly Downtime Schedule dialog box. Then click on OK. enter the number 3.m. Change Downtime Starts to 22:00.m. Day of Week is Saturday. Schedule Type is Weekly. Define downtime periods to account for the weekend. A weekend occurs once every week. remember that you have already accounted for the time between 5 p. For Downtime Starts. and name the schedule OffShift2.CHAPTER 11–More Advanced Model Building 4. If you are thinking that a typical weekend begins after work on Friday. Downtime Duration is 48. Friday and 9 a. When you add a Weekly schedule. enter 9 under HH and 0 under MM and SS. This is the number of clerks on Shift 1. call it WeekendShift1. Saturday in the OffShift1 period. 286 SIMPROCESS User’s Manual . Begin with Shift 1: For Schedule Name.0. 5.

because it occurs randomly. To define the Downtime schedule for sick days: 1. We will introduce frequency distributions here to complete our example. or how long they will be out. SIMPROCESS User’s Manual 287 . Weekend Downtime Period for Shift 1 Clerks Click on OK when you complete the definition. make reasonable estimates based on past experience. Figure 6. Defining a Random Downtime Illness is unplanned. who it will happen to. Change to 14:00. Illness is more complex to model than weekends or overnights. we will define time unavailable due to illness. Finally. Number of Units Down to 2. and name the schedule WeekendShift2. 6. You know that employees are going to get sick. but you do not know when it will happen. however. the weekend Downtime period for Shift 2. Random downtime is handled by specifying a frequency distribution instead of a fixed interval of time. Add a Periodic Schedule Type.Downtime Schedule of Resources Select the Planned check box. You can. Add Downtime 7.

most frequent value (Mode). To reflect this.5. in a typical month. Values are in units of hours (e.0. Let us assume that.CHAPTER 11–More Advanced Model Building A Periodic schedule is used to describe events that occur at varying intervals of time.10. This displays a dialog box for defining the parameters of your distribution: We’ve made the following assumptions: 288 SIMPROCESS User’s Manual . one of the five employees comprising the Clerks group will be out sick for a period of time. Scroll through the list until you find the default definition for Triangular distributions.0.g. we will assume that while a month is typical. and Maximum value.. from the list. the time between bouts of illness can be as little as three days or as much as a year. Moreover. or one day). Click on the box to the right of the arrowhead next to the Time Between Downtimes field. It reads: Tri(0.. Time between Downtimes describes the interval period. 2.0 represents 24 hours. specify a triangular distribution: Click on the arrow next to the Time Between Downtimes field to display a list of statistical distributions. Select Tri.0) There are three parameters in this definition: Minimum value.. 24.

enter the results in the dialog box: Click on OK.Downtime Schedule of Resources Typically. Convert days to hours by multiplying by 24. with most absences lasting two days. random event. Downtime Duration is another variable. For this model. Set the Schedule Name to SickTime. not all five. and no more than 10 days at a time. Set Units Down to 1. The maximum period between illnesses is 1 year (365 days). assume that a clerk is unavailable for at least 24 hours (one sick day). define a triangular distribution with these parameters: 5. We will use this as our most likely estimate. SIMPROCESS User’s Manual 289 . The frequency of downtime applies to one clerk at a time. there is a clerk out sick every 28 days. 4. The minimum period between illnesses is 3 days. The Units (number of clerks) of this resource is 5. 3. Following the procedure described in step 2.

select it from the Schedule list.CHAPTER 11–More Advanced Model Building 6. The downtime is not planned. Click on OK to accept the entire Downtime Schedule. The OK button finalizes the changes you have made to the Downtime Schedule. Click on OK to accept the changes. and click on Remove. so leave the Planned check box blank. The Cancel button exits the Downtime Schedule dialog box without accepting any schedule changes you have made. Modifying a Downtime Schedule Removing existing Schedule items from a Downtime Schedule is simple: open the Downtime Schedule for the resource. 290 SIMPROCESS User’s Manual . click on Edit and then modify the parameters you want to change on the Downtime Schedule dialog box. 7. The Add button updates the Schedule list box to include the schedule you have just defined. To change an Schedule item. highlight the Schedule item you want to delete. Click on Add to add the definition to the Schedule list.

3.Event Logs Event Logs Time Stamps and Recorders are Event logs supported in SIMPROCESS. Select Add to define Time Stamp requirements. The Time Stamp can be added to the Entity upon entry into and/or exit from the Process/ Activity. start to finish time. Entry and Exit Event Logs to Processes/Activities Once Time Stamps have been defined you must specify the Process or Activity where they will be attached to the Entity. Select Time Stamps… from the Define pull-down menu. 2. 1. Press the Close button when finished. For example. Time stamps are then added to Entities that traverse this process during simulation execution. Time Stamping is a facility that SIMPROCESS offers for monitoring times between any two events. Time Stamping can be performed upon entry (and/or) exit from an Activity. Define as many Start and End keys as you desire reporting on. To add a time stamp: SIMPROCESS User’s Manual 291 . This key is added to an entity by an Event Log when it either enters or leaves a Process or Activity. Time Stamp specifications can be defined between two stamp keys enabling the monitoring of cycle time & counts between two Time Stamps. Pairs of keys can be specified and Entity cycle times can be computed between them. The three steps for using Time Stamps are: • • • Defining Time Stamps Adding Entry/Exit Event Logs to Processes/Activities Viewing Time Stamp Reports Defining Time Stamps A Time Stamp can be thought of as a label or key that contains the current simulation time. 4. Define Start and Stop keys and press the OK button.

6. 1. select the Event Logs command button. Using an Activities/Process Properties dialog box. 7. Using the Type combo box. as shown below. 292 SIMPROCESS User’s Manual . 4. Press the OK command button and notice the Time Stamp report name in the Event Logs list box. 3. The Time Stamp Properties dialog box appears.CHAPTER 11–More Advanced Model Building 1. Select either one or more individual Entities or a range of Entities from the list box. 2. Select the key pair you wish to collect statistics on from the list box. 2. 5. Choose either the On Entry or On Exit check boxes for the Time Stamp. select Time Stamp and press the Add button. Select a Time Stamp Key in the combo box which contains your predefined time stamp labels. A Time Stamp must first be defined using the procedures starting on page 291. If you want to stamp every entity in your model. check the All Entities box. Collecting Statistics on Time Stamps The Statistic Requests dialog box specifies whether or not the collection of statistics is activated by the words (ON) or (OFF) at the end of the request type. Select Time Stamps… from the Define pull-down menu.

Click on the Statistics… button found on the Time Stamp Definition dialog. Statistics To activate the collection of this statistic. 9. a realtime plot will be shown during simulation. 7. Minimum Complete the real-time delay dialog to define the X and Y Axis and Maximums for real-time plotting. If you selected real-time delay for an entity time stamp. choose the Collect check box. 5.Event Logs 3. Select either real-time delay for a real-time plot during simulation execution or delay for post simulation reports. SIMPROCESS User’s Manual 293 . 4. The real-time delay dialog appears as shown below: 8. Click on the Edit button. Choose Edit. This opens a Statistics Requests dialog. 6.

button. If you selected delay from the list box. 4. post-simulation Entity Delay reports can be enabled.. 2. Click on the Statistics. Max and Count data collection. 15. Min. Click on the Edit button. Select the key pair you wish to view from the list box. 5.CHAPTER 11–More Advanced Model Building 10. Select Time Stamps… from the Define pull-down menu. To view these reports: 1.. Select the type of delay from the list box. choose OK. 11. choose OK. 6. Once you are finished entering the data. Choose the Collect Statistics check box for Mean. This will present the summary statistics in tabular form. 13. If you asked for Delay statistics you can view these reports following simulation. Standard Deviation. Complete the delay dialog which appears. Select the Close button when you have completed Statistics Requests. 12. Click on the View Button. 294 SIMPROCESS User’s Manual . Once you are finished entering the data. 14. Viewing Time Stamp Reports After Simulation If you selected Real-Time Delay Reports you will get a trace plot that shows the cycle time values of key pairs during simulation execution. The word (On) appears after real-time delay on the Statistics Request dialog box. 3.

turn on the Copy Time Stamps check box. This will cause each instance of the Copy entities to carry the Time Stamp information inherited from the Original entity. Time Stamps On the Properties dialog of the Copy activity. a new instance of an entity type leaves that activity. by default. To specify that the Output entities inherit the Time Stamps of the Input entity.Event Logs Passing Time Stamps Between Entities When an entity enters a Copy. upstream. click on the Copy Attributes button. To specify that the Clone entities resulting from a Split activity inherit Time Stamp information from the Original entity. The Original entity. or Transform activity. which opens the Copy Entity Fields and Attributes dialog box. simply click on the Copy check box. Split. This dialog contains the same Copy Time Stamps check box described above. will continue to carry Time Stamps that were defined on the entity. edit the Properties of the connector(s) emanating from the Clone pad. carry those Time Stamps defined on the Original entity. This will open the Copy Entity Fields and Attributes dialog. The Copy or Clone entities will not. You can specify that the Copy or Clone entities will also inherit the Time Stamps of the Original entity. SIMPROCESS User’s Manual 295 . Now. Attributes The Properties dialog of the Transform activity also carries a Copy button. when it leaves a Copy or Split activity.

carrying a Time Stamp. Recorders will write the arrival or departure time of an entity at a Process/Activity into a file called recorder. 296 SIMPROCESS User’s Manual . The Event Logs dialog box lists the currently defined Time Stamps and Recorder objects (either On Entry or On Exit). You can then examine the file after simulation and observe the actual times a specific Entity arrived or departed from specific Processes/Activities. Using an Activities/Process Properties dialog box. Differences Between Time Stamps and Recorder Objects Time Stamps measure time delays during a simulation. The time between arrivals and departures can also be calculated using Recorders. Recorder Objects measure arrival/departure rates at Processes/ Activities by recording how many Entities arrive/depart a Process/ Activity over time. you must turn on the Batch Component Entities check box on the Properties dialog of the Assemble activity).msg. Recorders In addition to Time Stamps. press the Event Logs command button. How much time an entity spends at one or more Processes/Activities is captured using Time Stamp keys. is Batched or Assembled. the output entity will not be aware of the Time Stamp. 1. You must Unbatch the output entity in order to register the endpoint of the Time Stamp (to do this for an Assembled entity.CHAPTER 11–More Advanced Model Building When an entity.

choose OK to leave the dialog box confirming your current selections. Entities 4. SIMPROCESS User’s Manual 297 .Event Logs 2. Select the entities you want recorded. Choose whether you want to record arrival times (On Entry) or departing times (On Exit) of the Entities in this Process/ Activity. The Recorder Properties dialog box appears. 3. The Cancel button rejects the current dialog selections. Once you are finished entering data. as shown below. 5. select Recorder and choose the Add button. If you use the All check box above the list box. Using the Type combo box. all entities in the list box will be selected and highlighted.

CHAPTER 11–More Advanced Model Building 6. The Event Logs list box shows the defined Recorders (either On Entry or On Exit) along with current Time Stamps. 298 SIMPROCESS User’s Manual . Choose the Close button to exit this dialog box.

SIMPROCESS User’s Manual 299 .Part C Advanced SIMPROCESS Tools The chapters in this section describe the advanced tools and the database included with SIMPROCESS Professional.

– 300 SIMPROCESS User’s Manual .

The Stat::Fit tool: • • • • • • Increases the accuracy of your experiment Decreases the time to find the solution to your problem Provides a statistical software tool tailored to the statistical simulation environment Interacts with you through a unique graphical user interface Performs data analysis Models random processes SIMPROCESS User’s Manual 301 .CHAPTER 12 Advanced Data Analysis SIMPROCESS comes with a data analysis tool that extends your ability to conduct statistical data analysis: Stat::Fit.

Statistical Simulation Experiment Process Stat::Fit is used to analyze data and construct a data model of the random process that generated the data.CHAPTER 12–Advanced Data Analysis Model Development Verification & Validation Statistical Experimentation & Analysis Results Figure 5. “An Introduction to Data Analysis and Modeling. An introduction to the statistical background for data analysis and data modeling is provided in the following paragraph.” 302 SIMPROCESS User’s Manual .

SIMPROCESS User’s Manual 303 . Probability distributions are represented by probability density functions. Probability density functions show how likely a certain value is. The total probability at all points should sum to 100%. cumulative density functions approach one as you move toward more positive values. if the cumulative density function value at 1. the larger the probability density function at that point. In addition. The curve fitting capabilities of Stat::Fit make it easy to find the correct distribution for your data. Cumulative density functions give the probability of a selecting a number at or below that value. The more likely the value. You do not need to know all these details to effectively model your situation.7 was equal to . Consequently.An Introduction to Data Analysis and Modeling An Introduction to Data Analysis and Modeling Introduction Probability distributions are a way of describing the random variations that occur in the real world. For example. so the area under a probability density function is equal to one. you can see what the standard distributions look like for your combination of input parameters. You just need to know which distribution best fits your data. Although we call the variations random. there are different degrees of randomness. The value of a cumulative density function at a point is the area under the corresponding probability density curve to the left of that value. different distributions are used for different purposes.7. selecting from that distribution would give a number less than 1. Since the total area under the probability density function curve is equal to one. and the different distributions correspond to how the variations occur. then 75% of the time.75.

if possible).” beginning on page 385 at the end of this manual. In this case. the mode is an important parameter for specifying a triangular distribution. why not just sum all the differences? If you do that.CHAPTER 12–Advanced Data Analysis Standard Statistical Indicators There are several statistical indicators that can tell a lot about the distribution of random values. If you are not familiar with these you should probably consult an introductory statistics textbook. Consider the following list of numbers: 2. they will sum to zero! The standard deviation is a measure of how much spread there is in the data. 9. The mode is the most likely value in a set of data. always try to get a good value for the mean (from actual data. If you are representing a time to complete some task or the number of arrivals in a certain time period. summing the squares of all the differences between the mean and the data points. there is a wide variation in the data. More definitions can be found in the “Statistical Tools Glossary. If the standard deviation is large. 304 SIMPROCESS User’s Manual . Loosely. If a distribution is symmetric about the mean. since it occurs most frequently. it is the average difference from the mean. the distribution contains a couple of large values which shift the mean away from the mode. You might wonder why the square and square root are taken. the data are tightly clustered around the mean. and singly-peaked. If it is small. The standard deviation is a simple measure of the spread in the data. taking the square root of this value. The mean for this set of data is 5. 3. 10 The mode for this set of data is 3. and then dividing by the square root of the number of data points. As we will see later. Here we just remind you of their meanings and some of their implications. then the mode and the mean will be equal. The mean is the most important characteristic of a data sample. 3. It is calculated by finding the mean. 3. The standard deviation is a necessary piece of information for many standard distributions.

An Introduction to Data Analysis and Modeling The variance is the standard deviation squared. A probability density function is a representation of a statistical distribution. and is small for unlikely values. Of course. since you must get some number from the distribution.7% confidence interval. The probability density function is large for likely values sampled from a distribution. and plus or minus three standard deviations corresponds to about a 99. The maximum value for the probability density function is equal to the mode for that distribution. The area under the probability density function curve within a certain range of values gives the probability of sampling from that distribution and getting a number within that range. Plus or minus one standard deviation corresponds to about a 68% confidence interval. the total area under the curve must be equal to one. plus or minus two standard deviations corresponds to about a 95% confidence interval. A confidence interval is the range of values you would expect a certain percentage of the population to fall into if the sample were drawn from a normal distribution. SIMPROCESS User’s Manual 305 .

suppose you have a station that can process five parts per hour. However.CHAPTER 12–Advanced Data Analysis Why Statistical Simulation Experiments? Mean-Value Analysis Mean-value analysis is a simple. Mean-value analysis tells you that the station should be able to handle the expected load. Sometimes there may be more and sometimes less. This may seem like a paradox: If I am modeling something that does not exist. 306 SIMPROCESS User’s Manual . there may not be a perfectly steady flow of four parts into the station every hour. and the reason that simulation is necessary for accurate predictions. For example. The data do not have to be exhaustive. approach to modeling. Likewise. where will I get the experimental data? This is not as big a problem as it sounds. and other times when it is backed up. in the real world you might find that some hours the station may process only three parts. The basic philosophy is to model processes by their average output. any data is much better than no data. This is the limitation of mean-value analysis. for there will be times when the station is idle. The individual components of a similar existing system will probably be close enough to ones in the proposed system to be useful in your model. although often quite useful. and other hours it may process seven. and on average four parts arrive every hour. disrupting the flow to and from it in the rest of the factory. This statistical nature of the real world will lead to a diminished throughput. The Importance of Experimental Data It is very important to have experimental data as the basis of your model.

Why Statistical Simulation Experiments? In fact. a good test of the model building process is to build a model of an existing system and check how closely the model and the system match up. This can often be a key to convincing others of the validity of the simulation modeling approach. SIMPROCESS User’s Manual 307 .

CHAPTER 12–Advanced Data Analysis SIMPROCESS Statistical Distributions The following table contains the statistical distributions available in SIMPROCESS. 308 SIMPROCESS User’s Manual . Other distributions can be created from these using the Define Distributions function.

shape. stream) TRI(minimum. mean. stream) ERL(mean. stream) WEI(shape. scale. shape. stream) LOG(mean. probability of mean1. stream) NOR(mean. mean2. standard deviation. maximum) UNI(minimum. stream) EXP(mean. stream) SIMPROCESS User’s Manual 309 . stream) POI(mean. minimum. maximum. stream) GAM(mean.SIMPROCESS Statistical Distributions Beta Distribution Erlang Distribution Exponential Distribution Gamma Distribution Geometric Distribution Hyper Exponential Distribution Hyperbolic Distribution Uniform Integer Lognormal Distribution Normal Distribution Poisson Distribution Triangular Distribution Uniform Distribution Weibull Distribution BET(shape1. shape. offset. stream) HEX(mean1. stream) GEO(minimum. standard deviation. stream) INT(minimum. mode. shape2. stream) HYP(position. maximum. maximum.

CHAPTER 12–Advanced Data Analysis 310 SIMPROCESS User’s Manual .

CHAPTER 13 SIMPROCESS Database SIMPROCESS Professional comes with a MS Access database (SimProcDB. and reports. Each can be modified to tailor the database for your output analysis. The database comes with predefined queries. SIMPROCESS User’s Manual 311 . The procedures for connecting the database to SIMPROCESS using ODBC are explained in the Getting Started Manual.mdb) designed to hold simulation results from simulation runs. graphs (forms).

CHAPTER 13–SIMPROCESS Database Commiting Results To The Database Database from the Report menu. If the database is not found an error dialog will appear. If this occurs recheck your database connection through the ODBC control panel. If so. the Commit To Database dialog will appear. Once a successful commit has been completed. Once you have entered the information click on Commit. When finished. the status bar shows Commit Complete. 312 SIMPROCESS User’s Manual . the option to save the data was selected. What constitutes a design will be discussed in the next section. the results are sent to the database. the menu item Commit to Database is inactive until another successful run has been accomplished. To commit simulation results to the database. Normally. You must enter a design name and scenario name. At this point SIMPROCESS verifys that the design name and scenario name you have are allowable. select Commit to The menu item will not be active until a simulation run is complete. This is to preclude commiting the same results more than once. The design and scenario comments are optional. or if stopped early.

then a new design name is required. If any of the above change. processes.System. SIMPROCESS will prompt you for a new design name because the number and names of process alternatives have changed. The System table is the highest level table and contains the model name. The Design table allows you to hold data from different versions of the same model. Therefore. assume you have commited results to the database with a design name of Design 1. If you attempt to use the same design name as before. Design. Design. the database is designed to allow you to hold results from more than one model. Design. A model design consists of the following: • • • • • • • • • • • • Number of entities Entity names Number of resources Resource names Resoure costs Number of activities. And Scenario System. processes. all records releated to that model are deleted from the database. Following that you add a process alternative to your model and run the model again. SIMPROCESS User’s Manual 313 . and process alternatives Names of activities. And Scenario Three tables in SimProcDB. and Scenario.mdb control the results you have placed in the database: System. For instance. If a record is deleted from the System table. and process alternatives Activity/Process structure Start and End date Start and End time Number of replications Output time units.

The scenario comment field is a good place to document the important settings for that scenario. 314 SIMPROCESS User’s Manual . Also. Differentiating those runs in the database is done through the scenario name. when using Launch Database Application from the Report menu. all records associated with that design are removed from the database. When a design is deleted from the Design table.CHAPTER 13–SIMPROCESS Database Note that you will not be prompted for a new design name if you simply run a different alternative that was already in the model. you must delete the design. A scenario is used to track various runs of the same system (model) and design. This form can be run from the Forms tab in Access. then there are no run results in the database. For example. The Manage Results form should be used to delete results for a Model (System). one run might have a certain resource level at 3 while another run has the same resource level at 4. if you would like to reuse a design name for the same model name (and there has been a design change). Design. or Scenario. all records associated with that scenario will be deleted from the database. Using the Manage Results form ensures the tables do not become corrupted. if you delete a scenario. DO NOT modify the tables directly. If the form is blank. the Manage Results form launches automatically. If you run another alternative you may change design names if you wish or simply use a different scenario name. Therefore. Again.

System. SIMPROCESS User’s Manual 315 . particularly after deleting records. Design. And Scenario IMPORTANT: It is good practice to regularly compact the database. This can be done from the Tools menu of Access by choosing Database Utilities.

and Process tables are used in the Experiment Manager.CHAPTER 13–SIMPROCESS Database Database Table Relationships If you need to view all the tables and the relationships between them. Parameter. 316 SIMPROCESS User’s Manual . from the Tools menu in Access.. The Experiment. Scenario Setup. select Relationships. These tables are not used to store run results.This is helpful in understanding how the queries were constructed. Model Setup. Design Setup..

The queries are not restricted by system. All of the queries were created in Access’ Design View rather than SQL. So if you run the Entity Cycle Time query all entity cycle times without restriction will be displayed. The queries can be used as-is or copied and modified.Database Queries Database Queries The predefined queries in the SIMPROCESS database are designed to offer the same information provided in the Standard Report. SIMPROCESS User’s Manual 317 . or scenario. design. Copying a query and restricting its search is one example of tailoring a query for your analysis. Show below is the Design View of the Entity Count query.

you could restrict the SystemName field from the System table so only one model’s results would be available. In the example below we restrict the query to the demonstration model CallCtr by placing "CallCtr" in the Criteria row of the query under SystemName. 318 SIMPROCESS User’s Manual . Other fields could be restricted as well. This was accomplished by not including the Replication field from the Entity Count query. and maximum were determined by selecting the appropriate statistic in the Total row for the field from the Entity Count query that was to be summarized across replications. The queries that generate results across replications were developed using the queries that give results by replication.CHAPTER 13–SIMPROCESS Database Even though you cannot see the whole criteria. The average. standard deviation. note that the StatType field from the Statistics Table is restricted by "Total entities generated" Or "Entities remaining in system" Or "Total entities disposed". These are the statistics types that make up Entity Count. then the Entity Count Across Replications query will also be restricted to CallCtr. minimum. For instance. So if you restrict the Entity Count query to CallCtr. Looking at the Design View for Entity Count Across Replications the only data source for the query is the Entity Count query.

The Reports tab contains the predefined reports. Therefore. the reports are based on the predefined queries. the Entity SIMPROCESS User’s Manual 319 . the Entity Count Across Replications form (or graph) is based on the Entity Count Across Replications query. Therefore. In order to restrict the graph to only certain records you would go to the original query (in this case Entity Count since Entity Count Across Replications is based on it) and restrict it. Like the graphs.Forms (Graphs) And Reports Forms (Graphs) And Reports The Forms tab contains the predefined graphs plus the Manage Results and Experiment Setup forms. These graphs are based on the predefined queries.

In order to restrict the report to only certain records you would go to the original query (in this case Entity Count) and restrict it. 320 SIMPROCESS User’s Manual .CHAPTER 13–SIMPROCESS Database Count report is based on the Entity Count query.

The Manage Results form can be launched from the Forms tab. enter the full path and Access will open with that database. If SimProcDB.mdb is entered in the database name field. However. (The remaining portion of these instructions assume MS Access is the database application. Access will start and prompt for a database. the Manage Results form will launch automatically when the database opens. then Access will start and prompt you to open a database. If this is not the case. Copies of SimProcDB.mdb and MS Access are the default.mdb may be used for your results. SIMPROCESS User’s Manual 321 . When the database desired is not in Spuser. simply close the form and continue. If only a database is in the field (with no path). the Manage Results form will not launch automatically. If you edit the tables directly. Always use the Manage Results form to delete records from SimProcDB.) If the database field is blank. they could become corrupted and you would lose the run results you have placed in the database. SimProcDB.Launch Database Application Launch Database Application This menu item on the Report menu brings up a dialog that allows you to select the database and database application you wish to use. If other actions are desired. SIMPROCESS assumes the database is in C:\SIMPROCESS\Spuser.

CHAPTER 13–SIMPROCESS Database 322 SIMPROCESS User’s Manual .

polygons. sectors. These primitives can be grouped together to form more complex images containing parts that can be manipulated independently by the application program. Icons. and text.sg2" files that are accessed by SIMPROCESS. circles. arcs. SIMPROCESS User’s Manual 323 .CHAPTER 14 Graphics Editor Tool SIMDRAW is an interactive menu based program for creating and editing SIMGRAPHICS II objects. These objects are used in SIMPROCESS for creating the layout and animation of your model. You can also edit the existing images (icons) supplied with SIMPROCESS. or graphic images can are built by drawing lines. bitmaps. These objects are saved to and loaded from SIMGRAPHICS II ".

a window containing a Palette and tool bar is displayed. Once started.SG2) distributed with SIMPROCESS.CHAPTER 14–Graphics Editor Tool Running SIMDRAW SIMDRAW is started from the Tools menu bar of SIMPROCESS. The window will contain a listing in the currently loaded SIMGRAPHICS II library. The Palette on the left is used to add new objects to the library. you will find these in the C:\SIMPROCESS\SPUSER\SG2LIBS directory.sg2 Usrnode. The libraries in the SG2LIBS sub-directory under the User directory are for you to store the images (icons) that you create with SIMDRAW. By default. Graphic Libraries in SIMPROCESS There are two set of graphics libraries (*.sg2 Contents Background Activities 324 SIMPROCESS User’s Manual . The following is a listing of the User graphics libraries: Library Usr.

sg2 Spnode. Editing an Existing Object To edit one of these images.sg2 Usrtokn. (including objects being edited). select the File/Save or File/Save As menu option to write this object to its SIMGRAPHICS II library file.sg2 Processes Entities Those in the SG2LIBS sub-directory under the System directory (by default C:\SIMPROCESS\SPSYSTEM\SG2LIBS) are readonly and should never be changed. or changing attributes of the object and its sub-components. resizing. After moving. At this time. Click on the Image icon to get a listing of the images in that library. and then use the Edit/Properties menu option or the Properties tool bar option to open it.sg2 Contents Background Activities Processes Simtoken. menu option will load an existing SIMGRAPHICS II library file and show its objects in the list window. The system libraries contain the images (icons) supplied with SIMPROCESS. Loading and Saving SIMGRAPHICS II Files.sg2 Spproc. Select the name of the image you want to edit in the listing.sg2 Entities The other SIMGRAPHICS II libraries in this directory are system libraries that you cannot edit. load the appropriate library. a new window containing the Image Editor will appear showing its graphical representation. The following is a listing of the system graphics libraries that contain the icons you can copy: Library User.. To end the editing of this object. Use the File/Save or File/ Save As menu option to save all objects shown in the list window. You can open these libraries. close its editor's window using the "go away" button in the SIMPROCESS User’s Manual 325 .. make changes to an image and then save the new image to the appropriate library in the User directory.Running SIMDRAW Usrproc. By default. it will look to the SG2LIBS sub-directory under your user directory (by default C:\SPUSER\SG2LIBS). The File/Open.

) 326 SIMPROCESS User’s Manual . Changing the Name of an Object To change the name of an object shown in the main list. Use the Edit/Properties menu option of this editor to obtain a dialog box showing the object's attributes. The library must be saved using File/Save before this change is permanent.. or by using the File/InsertCreate menu option. Removing an Object from the Library To remove an unwanted object from the current library. Once a file is selected. select the object's name in the listing. Choose the objects you wish to copy to your library. Adding an Image to the Library Images can be added to this library file by clicking on one of the "create" buttons on the left palette. The library must be saved using File/Save before this change is permanent..CHAPTER 14–Graphics Editor Tool top left corner of the window's header bar. a list box containing the names of all objects in this source library will be displayed. (The Shift and Ctrl keys can be used in conjunction with the mouse to select multiple objects. Adding an Object from Another Library If you want to add object(s) contained in a different SIMGRAPHICS II file. Change the Library Name text field to the new name. use the File/Merge. menu option. and then save the object with the File/Save menu option. select it and use the Edit/Properties menu option to bring up its editor. Making a Duplicate of an Object Any graphical object in the library can be duplicated by selecting its name in the main list and then using the Edit/Duplicate menu option. and then use the Edit/Clear menu option. Creating an object will automatically invoke the editor for that object.

At this time. polygons. circular objects. and Color Palettes The Style palette contains the set of dash styles. and text fonts that can be applied to the primitives. The Color palette contains 64 colors that can also be applied to the primitives. and bitmaps. and Color. Style. The Mode palette is shown on the left hand side of the Image Editor window. SIMPROCESS User’s Manual 327 . The Mode palette on the left side of the window is used for adding primitives. Primitives can be grouped hierarchically into images. Use it to add primitives to your drawing. hatch styles. Mode. the Style palette and Color palettes will be updated to reflect the style and color of that primitive. The editor window contains three palettes: Mode. Style. When a primitive is selected. Style and Color palette changes will also be applied to the selected primitive.Using the Image Editor Using the Image Editor The Image Editor is used to create and edit primitives such as lines. line widths.

The deleted item remains on the clipboard until the next time a Cut or Copy is performed. Copy. Shapes can be deleted without changing the clipboard by using the Delete option. Primitives inside a group can be selected directly by holding down the Ctrl key and clicking on the shape. and Resizing Shapes are selected by clicking the mouse button over the desired shape. click down on it and drag the shape to move it to the desired position.) Multiple shapes are selected by holding down the Shift key and clicking on several shapes. polylines must be selected by clicking on the line itself. NOT in the line's bounding box. Using the Clipboard (Cut. Be careful not to click on the resize handles. Resizing is performed by clicking down and dragging a resize handle. subsequent clicks will select the groups containing the currently selected shape. Multiple shapes may also be selected by clicking in the background of the window and dragging the mouse over the shapes you want to select. You can use the Paste option to paste as many copies as desired from the clipboard into the image. Sides and corners of this box contain eight small square resize handles. Using the Ctrl key. Subsequent clicks over the group will select shapes within that group. (For example. Selected shapes are marked by a bordering green or cyan box. A group of shapes (or images) is selected by clicking on one of the objects in the group. The clipboard is shared among all active Image Editor sessions. You 328 SIMPROCESS User’s Manual . To move a shape. Paste Commands) The Image Editor supports the standard Cut. and Paste operations found under the Edit menu. Moving.CHAPTER 14–Graphics Editor Tool Selecting. The Cut option command deletes selected shapes and places them in the clipboard. Copy.

Then point to where you want to start the line and drag to draw a line segment. and using the Edit/Properties. To create a freehand polyline press the freehand line button on the palette. Mode Use the Style palette to define dash style and line width. using the Copy command. Another attribute of the polyline is rounding. arcs. circles. The primitives are polygons. Double click to create the last vertex and return to Select mode. text. Creating Primitives The Image Editor supports creating and editing seven different primitive types. Polylines Polylines are created by clicking either the freehand or polyline buttons on the Mode palette. 0. A value of 1000. menu option. Corners defined by intersecting line segments can be given a rounded edge by selecting the polyline. and bitmaps. select the polyline button on the Mode palette. The Round Corners By value box contains the length of segment adjacent to each vertex to be replaced by a rounded corner. To create a polyline. This value is specified with respect to the real world coordinate space or dimension of the editor (the default dimension is [0. There are eight dash styles and six line widths to choose from.Using the Image Editor can copy graphics from one image into another by activating the source edit window... 32767]). SIMPROCESS User’s Manual 329 . Drag the mouse around the canvas area to draw the line. 32767. and then activating the destination editor and using the Paste command. polylines. sectors.0 is reasonable for rounding corners. Releasing the mouse button will return you to Select mode. Continue pointing and clicking until all but the last line segment has been defined.

To create a polygon. Point and click in the window to define vertices. Circles Circles are added by pressing the Circle button on the Mode palette. Release the mouse button to draw the circle and return to the Select mode. In Circle mode. Use the Style palette to give the circle a hatch pattern. To create a freehand polygon press the Freehand fill button on the Mode palette. Double click to create the last vertex and return to Select mode. There are eight patterns to choose from. and drag the mouse to the desired top-right corner. Release the mouse button to return to Select mode. point to where you want the center of the circle to go and drag the mouse to define the radius. There are eight patterns to choose from.CHAPTER 14–Graphics Editor Tool Polygons Polygons are created by clicking either the freehand. polygon. 330 SIMPROCESS User’s Manual . Use the Style palette to define a hatch pattern. Releasing the mouse button will return to Select mode. select the Polygon button on the Mode palette. Point to where you want the lower left-hand corner of the rectangle to start. Drag the mouse around the canvas area to draw the shape. To create a simple rectangle press the Rectangle button on the Mode palette. or rectangle buttons on the Mode palette.

and are drawn counter clock-wise from the starting point to the ending point. Release the mouse over where you want the starting point of the arc to go. and drag the mouse. SIMPROCESS User’s Manual 331 . Use the Style palette to give the sector a hatch pattern. Arcs An Arc is a curved line contained on the circumference of a circle. and are drawn counter clock-wise from the starting point to the ending point. Drag the mouse to where you want the sector to end and release to return to Select mode. Text Single line text primitives can be created and added to your image. Point to where you want the center point of the sector to go. Use the Style palette to define dash style and line width. Release the mouse over where you want the starting point of the arc to go. Sectors are composed of a center point. To draw an arc. Point to where you want the center point of the arc to go. There are eight dash styles and six line widths to choose from. There are eight patterns to choose from.Using the Image Editor Sectors A Sector is a filled semicircular shape similar to a pie slice. To draw a sector. and drag the mouse. a starting point and an ending point. Drag the mouse to where you want the arc to end and release to return to Select mode. first press the Sector button on the Mode palette. a starting point and an ending point. first press the Arc button on the Mode palette. Arcs are composed by a center point.

. menu option. To assign a system font to a text primitive select the primitive. The resulting Font box will display all fonts. On X Windows systems. Use the Edit/Properties.xwd" can be imported.. For example. Editor. its alignment should be centered horizontally and vertically using the Edit/Properties. A system font is defined by font name. menu option to define the text string to be displayed. A vector text font can be assigned to a primitive by pressing any of the eight Style palette buttons showing Ab. "X Windows dump" file formats ending in ". The font you select will be applied to the selected text primitive.bmp" extension can be imported and added to your image. 332 SIMPROCESS User’s Manual ... Point to where you want the center of the text to go and click the mouse button. and calligraphy styles loaded on your server. press the Text button on the Mode palette. point sizes. and then press the Dialog Box button on the lower right-hand corner of the Style palette. Text defined using a system font is non-scalable and can only be resized by changing the font. point size. There are two different types of text. if you wanted a text primitive defined with a system font to remain centered as an image is scaled.CHAPTER 14–Graphics Editor Tool To create a text primitive. System text fonts are "built -in" to the tool kit on which your server is running. and whether or not its uses italic and/or boldface calligraphy. vector text and system text. On MS Windows systems. "Windows Bitmap" files with the ". Bitmaps Bitmaps (or "snap shots") are not created directly by the Image but can be created using another drawing tool and can then be imported. Vector text fonts are fully scalable in any dimension and are portable between MS Windows and X Windows platforms. Text alignment with respect to the image can also be defined. This same font can now be applied to other primitives using the ST button at the lower-left corner of the Style palette.

You can select primitives directly by clicking on them while holding down the Ctrl key. menu option.Using the Image Editor To add a raster file. select the bitmap and use the Edit/ Properties. You can also add shapes to an existing image by selecting first the shapes. Use the Layout/Ungroup menu option to destroy an image. An image is selected by clicking on one of the primitives within it.bmp" or ". and then using the Layout/Add to Group menu option. Once in the Image Editor. The resulting group will be shown bounded by the green selection box. Images can contain other images forming a hierarchy. select the shapes to be grouped using the Shift key.. Shapes can be removed from an image by selecting the shape and using the Layout/Remove from Group menu option. For example.. menu option. To create an image. and then select the Layout/Group menu option. SIMPROCESS User’s Manual 333 . bitmaps can be resizeable or non-resizeable.xwd" file from the dialog box and press the OK button to import the bitmap. then an image. Creating Images An image represents a grouping of primitives and/or other images. Repeated selections of an image will select the shapes within it. its alignment should be centered horizontally and vertically from the Properties dialog. and can loose meaningful pictorial information if made smaller.. import your image using the Edit/Import. To change the scalability.. (Remember that resizeable bitmaps may take longer to render the first time.) Alignment can be applied to bitmaps as well as text primitives. if you wanted a non-scalable bitmap to remain centered as an image is scaled. Select a ".

The image can be resized by dragging the square resize handles on the green selection box. use Layout/ Ungroup to eliminate the grouping. To leave Point Edit mode. Clicking on a selected primitive will enable point editing for that primitive. To change properties of this image (such as its name). To add a new point to the primitive. Select a new center point for the image and then select the OK button on the Recenter dialog. 334 SIMPROCESS User’s Manual . click on the green skeleton and drag the mouse. To resize the root image. click on the background or another shape. a new point is inserted between the indicated vertices. deselect all shapes by clicking in the background. To delete a point. Editing Points on a Primitive The vertices defining a primitive can be moved. select and drag the appropriate point handle. When the root image is appropriately sized. When the mouse button is released. select its point handle and use the Edit/Delete menu option (or press the Delete key).CHAPTER 14–Graphics Editor Tool Editing the Root Image The editor's window shows all objects contained by the image being edited or the root image. The currently selected point is shown by a blue point handle. de-select all shapes and use the Edit/Properties menu option. and use the Edit/Recenter menu option. and then use Layout/Group to make a group. A primitive in point edit contains a green skeleton which connects its vertices. To move a point. Representing each vertex point is a hollow green square or point handle. use Edit/Select All to select all of its shapes. To reset the center point of the root image. added and deleted using the Image Editor.

Point to where you want the center point of the object to be. use the Bring to Front or Send to Back options from the Layout menu. but not necessarily to the front of all shapes in the window. If you want to set the angle by which an object is rotated. of any image or primitive can be changed by selecting the shape. To move shapes in front of or behind other shapes. and click. A set of green cross-hairs will appear showing the current center point. the Bring to Front menu option will bring the selected shape to the front of all other shapes in that group. press either the OK or Cancel buttons on the dialog box.Using the Image Editor Defining Stacking Order or Priority You can specify how shapes are stacked when they overlap and can specify their stacking order. To do this. Using the Flip and Rotate Tools Any selected shape can be rotated about its center point by any amount. SIMPROCESS User’s Manual 335 . You can reset the center point of the entire drawing (root image) by de-selecting all shapes and then using the Edit/Recenter menu option. and then using the Edit/Recenter menu option. Defining the Center Point of a Shape The center point. In other words. To leave the Recenter mode. select the shape(s) and then use the Edit/ Rotation/Clockwise or the Edit/Rotation/Counter-Clockwise menu option. Stacking order is with respect only to other shapes in the same group or image.

either vertically or horizontally to the primary selection (shown enclosed by green selection handles). To flip an object about its x-axis use the Edit/Flip/Horizontal menu option. Granularity can be Fine. They can be aligned vertically with respect to either their left edge. The granularity of the grid can be adjusted using the View/Grid Spacing menu option. The disColor 336 SIMPROCESS User’s Manual . Before flipping or rotating a shape. You can show (or hide) grid lines by toggling the View/Grid menu option. right edge or center. first select multiple objects using the Shift key. Remember that the intersection of the x-axis and y-axis of a shape is its center point (defined using the Edit/Recenter menu option).CHAPTER 14–Graphics Editor Tool use to Edit/Rotation/Set Angle menu option. Align and Distribute Multiple shapes can be aligned and distributed. Using Grid Lines A grid can be used to perform precise positioning and sizing of shapes by breaking the editor window up into divisions. Medium. Shapes can be aligned horizontally with respect to their top edge. The Layout/Distribute menu option allows you to distribute three or more shapes in relation to each other. Select an alignment scheme from the resulting dialog box. Shapes can be distributed uniformly along the circumference of a circle. first make sure that its center point is defined appropriately. To flip an object about the y-axis use Edit/Flip/Vertical menu option. You can change the color of the grid by selecting a color from the palette and then using the View/Grid Color menu option. and then use the Layout/Align menu option. or center. To align. Shapes can be distributed horizontally so that the same space exists between left and right edges of adjacent shapes. bottom edge. or Coarse. Distributing vertically will reposition the shapes so that the same space exists between bottom and top edges of adjacent shapes.

Using the Image Editor tance between grid lines for Fine graduation is 500. the View/Snap From menu option allows you to specify which corner of a shape's bounding box will be aligned to the grid intersections during repositioning. To see the entire coordinate space. the area inside the rectangle will be expanded to encompass the entire window. use the View/Fit in Window or View [1:1] menu option. use the View/Zoom Out menu option. select the desired SIMPROCESS User’s Manual 337 . To zoom in to some area of the window. you may want to magnify a portion of the window. By toggling the View/Snap menu option. you can pan to other areas of the window using the horizontal and vertical scroll bars. To zoom back out.0. first select the View/Zoom In menu option. Changing Views (Panning and Zooming) If working on a highly detailed portion of the image. Unless the window is square. to window Changing the Layout Size and Color To change the editor window's background color. When zoomed in. you can restrain positioning and resizing of shapes to the intersections of the grid. and for Coarse is 4500. You can return to the default view by using the View/View [1:1] or Fit menu options. Then.0. but guarantee the entire coordinate space will be seen. for Medium is 1500. drag out a rectangle with the mouse over the area of detail. the top or bottom portion of the view may not be visible.0. a repositioned shape's center point will be glued to the grid intersections. If the Snap mode is active. When the mouse button is released. This viewing mode will leave dead space off to the right of the window. If View/Snap from/Center is selected.

338 SIMPROCESS User’s Manual . A dialog will be displayed allowing you to increase the number of "screens" thereby adding space to the right and bottom sides of the editing area. use the Layout/Layout Size menu option.CHAPTER 14–Graphics Editor Tool color from the Color palette and then use the Layout/Layout Color menu option. If you want to increase the size of the editing area beyond what is defined by the boundaries of the world coordinate system. This new space can be "scrolled to" using the right and bottom scroll bars.

• • • • Define Experiments Run All Experiments Run Selected Experiments Run Specific Experiment SIMPROCESS User’s Manual 339 . place the results in the database.CHAPTER 15 Experiment Manager The Experiment Manager allows you to set up model runs that SIMPROCESS will run automatically. loads the appropriate model. runs the model. SIMPROCESS reads the information from the database. then commits the results to the database. The four items on the Experiment menu control the operation of the Experiment Manager.mdb). This is accomplished by defining experiments in the database (SimProcDB. and after each run.

If SimProcDB. If you desire to open Access from SIMPROCESS with a database that is not SimProcDB. If the database name you enter is in C:\SIMPROCESS\Spuser. the form is located on the Forms tab and can be launched from there once the database has been opened.mdb or a copy of SimProcDB. However. Experiment Manager Database Tables Six database tables are used to define experiments.mdb is entered in the database name field. SimProcDB. then no path is required.mdb. The Experiment Setup form will not launch automatically if a copy of SimProcDB is used. • • • • Experiment Model Setup Design Setup Scenario Setup 340 SIMPROCESS User’s Manual .mdb or is not a copy of SimProcDB. the Experiment Setup form will launch automatically when the database opens.mdb. you must enter the full path for Access to start and open the database. (The remaining portions of these instructions assume MS Access is the database application.CHAPTER 15–Experiment Manager Defining Experiments Selecting Define Experiments brings up a dialog that allows you to select the database and database application to use.) When defining experiments you must use SimProcDB.mdb and MS Access are the default. use Launch Database Application under the Report menu. If this is not the case.

Activity. An experiment can have multiple models. and the table below gives a description of the fields in each of the database tables. Table Experiment Field Description ID number for each record User entered Experiment name Selects Experiment for running (default is selected) Option to display error alert dialogs (default is No) ID number for each record ID of Experiment this model is associated with Name of Model to run (with full path) ID number for each record ID of Model this Design is associated with Name of Design Comment concerning Design ID number for each record ID of Design this Scenario is associated with Name of Scenario Comment concerning Scenario ID number for each record ID of Scenario this Parameter is associated with Entity. a design can have multiple scenarios and a scenario can (optionally) have multiple Model Parameters and Process Alternatives. Model Name of Attribute Value of Attribute for Model run ID number for each record ID of Scenario this Parameter is associated with Process name for Alternative Alternative of Process to run Required Automatic Yes Yes Yes Automatic Automatic Yes Automatic Automatic Yes No Automatic Automatic Yes No Automatic Automatic No No No Automatic Automatic No No ExperimentID ExperimentName Selected DisplayErrorAlerts Model Setup ModelSetupID ExperimentID ModelName Design Setup DesignSetupID ModelSetupID Design DesignComment Scenario Setup ScenarioSetupID DesignSetupID Scenario ScenarioComment Parameter ParameterID ScenarioSetupID AttributeType AttributeName AttributeValue Process ProcessAlternativeID ScenarioSetupID Process Alternative SIMPROCESS User’s Manual 341 . a model can have multiple designs.Type. Entity.Defining Experiments • • Parameter Process The relationship diagram shows the relationships between the database tables. Resource.

CHAPTER 15–Experiment Manager The Parameter and Process tables are optional. Experiment Setup Form The Experiment Setup form is used to enter experiments into and delete experiments from the Experiment Manager. The six database tables should not be edited directly. The Process table allows you to change Process Alternatives for a scenario. Selected. 342 SIMPROCESS User’s Manual . This shows an example experiment called Purchasing. and Display Error Alerts. Entering Experiment Information There are three fields that require entries for each experiment: Experiment Name. The Parameter table allows you to change values for attributes you have declared to be Model Parameters. The form has the Experiment table fields listed on top with five tabs containing forms for each of the other tables.

The complete path and model name with extension must be entered. design. an error dialog will display that will stop the experiment until the error has been acknowledged by the user. then you check or uncheck Selected. The first is Model Setup. This tab has the sub form to enter and delete models from experiments. In this example one model is entered for the experiment Purchasing. Although multiple models can be entered before SIMPROCESS User’s Manual 343 . The default is checked. If Yes is entered. Display Error Alerts defaults to No. This allows you the option of having experiments defined that you may not wish to run. Entering Model Information The Experiment Setup form has five tabs.Defining Experiments Once you’ve given your experiment a name. If No is chosen. Those with errors will be skipped over. and scenario that it can. then SIMPROCESS will run the experiment without stopping to notify of errors. This means SIMPROCESS will run every combination of model. then when SIMPROCESS encounters an error when running the experiment.

Entering Design Information The Design Setup tab contains the form for entering information into and deleting information from the Design Setup table. If no value is entered for Reps. if there was a previous design for the same model with a different number of replications. the previous design’s number of replications will be the number for the current design if Reps is left blank. the last saved model value will be used for each scenario in this design unless there was a previous design for the same model. The Design and Reps fields are optional. As with the Model Parameters and Process Alternatives. it is recommended that you enter all the design and scenario information (along with parameter and process information if needed) before entering the next model. At least one design name is required on this sub form. Comment 344 SIMPROCESS User’s Manual .spm”. One design called “5 Reps” is entered for the model “C:\SIMPROCESS\Spuser\Purchasing.CHAPTER 15–Experiment Manager entering design and scenario information.

The Attribute Type field corresponds to the types of attributes that can be defined in SIMPROCESS. the name of the attribute. The Scenario Comment field is optional. may have just Model Parameters or just Process Alternatives. entering Model Parameters and Process Alternatives is optional. • • • • • Entity Entity Type Resource Activity Model SIMPROCESS User’s Manual 345 . or may have both. Entering Model Parameter Information The next tab is Parameter Setup. In this example there are five scenarios for the design “5 Reps”. At this point no more information is required to run a scenario. You must declare the type of the attribute. Scenarios may have no Model Parameters or Process Alternatives. This sub form enters information into and deletes information from the Parameter table. and the value for the attribute. At least one scenario must be entered for each design. As stated earlier.Defining Experiments Entering Scenario Information The Scenario Setup tab contains the sub form for entering scenarios.

then the model will run with the last saved values for the Model Parameters. Thus. In this example there are three Model attributes to be changed for a scenario. You enter the process name and the alternative that you wish to be active for the scenario. process names and alternative names are case sensitive. this will cause problems. if the attribute is an integer attribute. and the next scenario uses the same model (that is. The sub form on this tab enters information into and deletes information from the Process table. a new model is not loaded). Process names and alternative 346 SIMPROCESS User’s Manual . SIMPROCESS will stop searching for the process entered with the first process in the model that matches. Again. then the value entered must of type integer. It will not reset to its default value. Also the value must be of the appropriate type for the attribute. NOTE If no Model Parameter information is entered for a scenario. if you have duplicate process names in various parts of your model. only the process name. so it must match exactly the attribute name in your SIMPROCESS model. Entering Process Alternative Information The final tab is the Process Setup tab. If a parameter has been changed for a scenario. Do not enter the process hierarchy. For example. then the Model Parameter will have the same value as the previous scenario.CHAPTER 15–Experiment Manager The attribute name is case sensitive.

Functional alternative for the Purchasing process will be active for the current scenario. a new model is not loaded). NOTE If no process/alternative information is entered for a scenario. In this example the Centralized. and the next scenario uses the same model (that is. If an alternative has been changed for a scenario. then the active alternative for a process will be the same as the previous scenario unless a different alternative is specified in the Experiment Manager. then the model will run with the last saved active alternative for each process. SIMPROCESS User’s Manual 347 .Defining Experiments names entered in the Experiment Manger must match those in the model exactly.

This option ignores the Selected field in the Experiment table. We will discuss starting experiments. you ready to run your experiments. • • • Run All Experiments Run Selected Experiments Run Specific Experiment Run All Experiments The menu item Run All Experiments causes SIMPROCESS to attempt to run every experiment defined. if 348 SIMPROCESS User’s Manual . Run Specific Experiment This menu item allows you to specify one experiment to run. However. and how to generate standard reports from experiments. the operation of experiments. how to interact with experiments. a dialog appears that allows you to enter an experiment name. since MS Access is not case sensitive.CHAPTER 15–Experiment Manager Running Experiments Once the experiments have been defined using the Experiment Setup form. SIMPROCESS attempts to run the experiments in which the Selected field is checked. When selected. Starting Experiments There are three options for running your experiments. Run Selected Experiments When this menu item is selected. The experiment name’s spelling must match the spelling of the name in the database.

4. 3. End loop. Load Model. 2. Experiment Operation The Experiment Manager operates as follows when running experiments: Once you choose to begin an experiment. Query Process table. Commit results to database.Running Experiments “purchasing” was entered. Query Parameter table. Run Model. the Experiment Manager displays a SIMPROCESS User’s Manual 349 . End loop. End loop. Query Design Setup table. Display status message on success of experiments. MS Access would match that entry with the “Purchasing” experiment in the database. Verify Design. Query Experiment table. Each step occurs if the previous completes successfully. an error message appears stating the experiment could not be found in the database. Query Scenario Setup table. SIMPROCESS begins a sequence of steps. Prompt to save current work if necessary. Contact the database. If no match occurs. The steps to running experiments are 1. Enter a loop with sub loops. Experiment Trace During experiment execution. End loop. Query Model Setup table.

The trace is displayed using the SIMPROCESS Messages window. and the Model Parameter updates are shown after the “running scenario” message. it shows the Process Alternative that was active and the values of the Model Parameters for the scenario.CHAPTER 15–Experiment Manager trace showing the steps that have been completed and the current step. The trace includes the date. Especially important are the messages that show errors with your Process Alternatives and Model Parameters. and a message. and scenario. However. interactive error messages are suppressed. 350 SIMPROCESS User’s Manual . The above example shows you the experiment. This is because Process Alternatives must be set before the run begins. time. model. and Model Parameters are set when the run begins. design. This allows you to know which experiments completed successfully and which encountered errors. It is important to examine the Experiment Manager trace. when the Display Error Alerts field is set to No. Note that the Process Alternative message appears before the “running scenario” message. Experiment Errors As explained in the instructions for defining experiments. The trace can be saved by selecting the Save button. since it will give the complete status of your experiments. error messages will appear in the Experiment Manager trace. Also. alert dialog status (see below).

SIMPROCESS User’s Manual 351 . error dialogs will appear that pause the Experiment until you acknowledge the error. if there are more experiments to be run a dialog appears with the option to stop all experiment runs. after the error displays.Running Experiments When the Display Error Alerts field is set to Yes. Also.

352 SIMPROCESS User’s Manual . processing stops until you acknowledge the error. If the Display Error Alerts field is set to Yes. descend into processes. it will run with the last saved settings for animation. Therefore. NOTE When the Experiment Manager loads a model. That way SIMPROCESS will run every combination of Experiment. make sure the model has been saved with animation disabled.CHAPTER 15–Experiment Manager If you want to run experiments over night. change duration values for delays. design. Experiments can be stopped early by stopping a model run. Model. you have the same ability to interact with the model as you do when starting a model run yourself. and scenario combinations. loading a model. etc. model. or committing results to the database. if an error occurs. Otherwise. and Scenario that it can. we recommend setting the Display Error Alerts field to No for every experiment you wish to run. if you do not want to have to turn the animation off after the experiment has started. Interacting With Experiments When the Experiment Manager starts a model run. Otherwise you must stop every run to stop all experiment. This means you can turn animation on or off. An experiment cannot be stopped while querying the database. Design. you will have the option to stop completely. change the animation settings.

go to Define Global Statistics Collection on the Report menu. Std1. and so on. SIMPROCESS User’s Manual 353 . This will create a file in your model directory that will contain the report for every replication. Select Generate Standard Report after batch runs.txt.Running Experiments Generating Standard Reports From Experiments The Experiment Manager automatically commits your run results to the database. If you would also like the ASCII version of the Standard Report. and the average of the replications. The Standard Report files are named Std. the sum of the replications.txt.

CHAPTER 15–Experiment Manager 354 SIMPROCESS User’s Manual .

Appendices SIMPROCESS User’s Manual 355 .

– 356 SIMPROCESS User’s Manual .

then releases them as one. while retaining their individual identity. Routes entities to different paths in the model network. Copies entities.APPENDIX A Activity Summary Table Required Parameters Assemble Receives 2 or more entities and assembles them into a single entity for release. Assigns values to entity attributes. Quantity to Batch Min Batch Size Max Hold Time Batch Entity Type Branch Type Number of Entities Resources Delay Branch Copy Resources Delay Resources Delay SIMPROCESS User’s Manual 357 . Component Entity Assembled Entity Entity Attributes Non-standard Options Resources Delay Batch Components Resources Delay Set Entity Priority Assign Batch Stores entities until a condition is met.

Accumulates entities until a condition is met. Reunites entities divided at a Split activity. Disposes of entities. then releases a specified number of them. Coordinates the release of various entities.Appendix A . Adds units to consumable resources. Replenish actions (Resource and Units) Family name Copy Priority Resources Delay Number of Pads Resources Delay Synchronize 358 SIMPROCESS User’s Manual . Resources Tag attached to allocation Family Name Hours of Delay Time Non-standard Options Resources Maximum entity Count Release all allocated resources Resources Delay Generate Generates entities. Divides one entity into several to model the division of processing among several activities. Release actions Threshold Release ON/OFF Threshold Release Quantity (if Threshold Release ON) Trigger Release Quantity (if Trigger Release on) Entity type Quantity Interval Get Resource Join Obtains resources to be held during several activities.SIMPROCESS Activity Summary Required Parameters Delay Dispose Free Resource Gate General-purpose activity. Releases resources obtained by Get Resource activities. Start and End dates) Schedule Type Schedule Items Batch family members Resources Delay Merge Replenish Resource Split Merges entities and routes them in a single stream.

and releases one or more of the new type.SIMPROCESS Activity Summary Required Parameters Transform Transforms arriving entities from one type to another. Separates a batched entity into its constituent parts. Number of Output Entities Output Entity type Non-standard Options Copy Attributes Resource Delay Resource Delay Unbatch SIMPROCESS User’s Manual 359 .Appendix A .

Appendix A .SIMPROCESS Activity Summary 360 SIMPROCESS User’s Manual .

This directory is called SIMPROCESS. named SPUSER. by default it is named as SPSYSTEM. Under the SIMPROCESS directory are two subdirectories. This appendix briefly describes the structures and contents of these two directories.APPENDIX B SIMPROCESS File Structure The SIMPROCESS installation program creates a directory under the system Root Directory. and the other is the User Working Directory. Here is the basic directory structure: SIMPROCESS SPSYSTEM SG2LIBS OBJLIBS SIMDRAW TEMPLATES HELP WIN32_LICENSE DRIVERS SPUSER DEFAULT DEMOS OBJLIBS SG2LIBS SIMPROCESS User’s Manual 361 . One is the SIMPROCESS System Directory.

exe simproc.edi data. SIMDRAW graphic editor executable ) ( READ ONLY.edi domain. SIMPROCESS dynamic link library ) ( READ ONLY.dll caciuser.edi seeds. image editor configuration file ) ( READ ONLY.txt reports.dat elmid32. SIMPROCESS on-line help file contents ) ( READ ONLY.cnt simproc.dll getstart. SIMPROCESS dynamic link library ) ( READ ONLY. simproc. experiment manager tool configuration file ) ( READ ONLY. on-line documentation file ) ( READ ONLY. and icon graphics.exe simproc.dll caci32.dll cfg. report manager configuration file ) ( READ ONLY. SIMPROCESS dynamic link library ) ( READ ONLY. there are: basic. SIMPROCESS dynamic link library ) ( READ ONLY.e. SIMPROCESS dynamic link library ) ( READ ONLY. statistics editor configuration file ) OBJLIBS subdirectory This directory contains all the distributed model template libraries. SIMPROCESS configuration file ) ( READ ONLY.dll cacilm32.pdf stats. SIMPROCESS dynamic link library ) ( READ ONLY. SIMPROCESS on-line help file ) ( READ ONLY. SIMPROCESS dynamic link library ) ( READ ONLY.edi ( READ ONLY. All of these files are set to read only.edi readme.dll mulstats.SG2 and *. distributions plot configuration file ) ( READ ONLY.dat simdrw32.cfg simproc. statistics editor configuration file ) ( SIMPROCESS last minute documentation ) ( READ ONLY.edi control. SIMPROCESS executable ) ( READ ONLY. *. i.hlp spuser.lib ( SIMPROCESS standard modeling template library ) SG2LIBS subdirectory This directory contains all the distributed graphic files.edi caci32-6. default random stream seeds values ) ( READ ONLY.BMP. SIMPROCESS dynamic link library ) ( READ ONLY. experiment manager tool configuration file ) ( READ ONLY. data analysis tool editor configuration file ) ( READ ONLY. 362 SIMPROCESS User’s Manual .cfg sample.edi domain.Appendix B-SIMPROCESS File Structure [ModelName] DATA PS Under the SPSYSTEM directory.pdf mspole. SIMPROCESS dynamic link library ) ( READ ONLY.dll caciu-6. domain editor configuration file ) ( READ ONLY.dll cacilmd.dll cacia-6. default editor configuration and preferences ) ( READ ONLY. Users can load any of these libraries and use the pre-defined modelelement templates to build models.txt editor. SIMPROCESS specific domain definition ) ( READ ONLY. on-line documentation file ) ( READ ONLY. menu options. They are dialog boxes definitions.

sg2 simdlg.sg2 clone.sg2 userpal.sg2 spsappl.sg2 batch.sg2 expmgr.bmp batchn.bmp xformn.bmp joinn.sg2 xform.APPENDIX B-SIMPROCESS File Structure allocate.bmp clonen.sg2 process.sg2 simsys.sg2 spproc.sg2 assign.sg2 pndetail.bmp branchn.sg2 spnode.sg2 simplot.sg2 unbatch.sg2 repgrfmn.sg2 create.bmp delayn.bmp split.sg2 gate.sg2 sink.bmp releasen.sg2 source.bmp unbatchn.sg2 simtoken.sg2 colorpal.sg2 SIMPROCESS User’s Manual 363 .bmp allocn.sg2 release.sg2 ssnsrc.bmp assembn.bmp createn.sg2 user.bmp sinkn.bmp splitn.sg2 delay.sg2 merge.sg2 system.bmp processn.sg2 splash.sg2 ibmplot.sg2 join.bmp mergen.bmp assignn.bmp sourcen.bmp syncron.bmp syncro.sg2 assemble.sg2 branch.bmp gaten.

tpl ( ( ( ( ( ( Entity description form ) Resource description form ) Activity/Process description form ) Pad description form ) Connector description form ) Model description form ) ( Entity documentation template ) ( Resource documentation template ) ( Activity/Process documentation template ) ( model documentation template ) HELP subdirectory This directory contains the SIMPROCESS help files.cnt simdraw.ini simdraw.sg2 simdraw.tpl res.cnt ( SIMPROCESS help file ) ( help configuration file ) Win32_License subdirectory This directory contains the license manger files.tpl model. 364 SIMPROCESS User’s Manual .tpl node.hlp simproc. They are default forms and templates used in documenting models and model elements.fnt simdraw. colorpal.sg2 ( ( ( ( ( ( ( ( SIMDRAW SIMDRAW SIMDRAW SIMDRAW SIMDRAW SIMDRAW SIMDRAW SIMDRAW graphics file ) configuration file ) configuration file ) text fonts file ) on-line help file ) configuration file ) grahphics file ) graphics file ) TEMPLATES subdirectory This directory contains all the distributed documentation template files.cfg simdraw.sg2 system. simproc.SIMDRAW. token resr nod pad arc mod token.hlp simdraw. All of these files are set to read only.Appendix B-SIMPROCESS File Structure SIMDRAW sub-directory This directory contains all the configuration files and on-line help file required by the Graphics Editor .

all these supplemental directories. The driver in the Win_95 directory is used for Windows 98. 95 & 98.bmp (bitmap file for project.eps ( encapsulated postscript file of the working area ) DEFAULT subdirectory This directory is created by SIMPROCESS to temporarily collect the model’s documentation and output files. i. Initially.ini (editor configuration from the last session) simprocdb. Once a name is assigned.APPENDIX B-SIMPROCESS File Structure lic_w32.lib palette icon) oneone.exe ( license manager application ) Odbctrac. will be saved under this directory temporarily. SIMPROCESS will then create a directory using the assigned name and move all its related files to the newly created directory. documentation files) that needs to be saved to the disk in this period.lib palette icon) *. SIMPROCESS User’s Manual 365 . SIMPROCESS will call this model default. Under the SPUSER directory. contain only a model documentation file.bmp (bitmap file for project.spm before the user explicitly assigns a name to it.spm (SIMPROCESS model file) *. Any file (e. mod. When building a model.spm ) *. as well as their supplemental directories. and NT.bmp (exported bitmap file of the working area.bmp (bitmap file for project.dll ( odbc dll ) Drivers subdirectory This directory contains the dongle drivers for DOS.bmp (bitmap file for project. except EXPMGR. the file extension is fixed to bmp and will overwrite whatever user specified) *.doc. there are: simproc.bck (the previously saved model file of the current *. Each are in their own subdirectories.e.lib palette icon) onemny. DEMOS subdirectory This directory contains demonstration and reference models. The EXPMGR subdirectory contains the examples of experiment designs.lib palette icon) mnyone.g.mdb(MS Access database) mnymny.

spm ( tutorial’s reference model ) assemble.spm ( reference model describes Split and Join activities ) supply.spm ( demonstration model ) purchas.sg2 usrnode.spm ( demonstration model ) OBJLIBS subdirectory This directory contains user created libraries that collect user defined model-element templates. Currently.spm ) SG2LIBS subdirectory This directory contains the graphic files that users have imported or created with SIMDRAW for future usage.sg2 ( ( ( ( User User User User created created created created background images ) activity icons ) process icons ) entity icons ) 366 SIMPROCESS User’s Manual . project.sg2 usrproc.sg2 usrtokn.spm ( demonstration model ) invntory.spm ( reference model describes Assign activity ) batch.project.spm ( demonstration model ) cashier.lib ( Reusable template library for the demo model .spm ( demonstration model ) newacct.spm ( demonstration model ) cnfgmgmt.spm ( demonstration model ) project. Users can load any of these libraries and reuse the templates to build models. usr.spm ( demonstration model ) helpdesk.spm ( demonstration model ) to-be.spm ( demonstration model ) credit.Appendix B-SIMPROCESS File Structure as-is. there is one library created for demonstration purposes.spm ( tutorial’s reference model ) wafer.spm ( demonstration model ) fullfill.spm ( reference model describes Batch/ Unbatch activities ) callctr.spm ( demonstration model ) spltjoin.spm ( reference model describes Assemble activity ) assign.

ndx ( simulation statistical results ) stat1. SIMPROCESS User’s Manual 367 .doc ( Connector documentation files ) ( model’s full documentation ) ( full documentation of a selected Process/Activity ) Nod[n]. there may be two subdirectories.idx ( simulation output data file ) stat1. there will be a supplemental directory named as the model’s name and created by SIMPROCESS.CSV).trc ( simulation statistical results ) Under this supplemental directory. DATA Exported report data in text format which can be space delimited file(*.msg ( recorder output messages file ) resource.doc ( Entity documentation files ) dbdata ( database design and scenario info) recorder. *.doc ( Resource documentation files ) Token[n]. It will contain: Arc[n].doc Node.doc Model.PS. These contain design information for design verification. there may be other files composed of database system and design names.nod ( simulation output data file ) otherwise. Also. PS Exported postscript files from report graphics.TXT) and comma delimited file(*. i.APPENDIX B-SIMPROCESS File Structure [ModelName] subdirectory For each model.e.doc ( Activity documentation files ) Resr[n]. They contain exported text format data files and postscript files from the model.mon ( simulation statistical results ) stat1.nod ( simulation output data file ) costdata ( simulation output data file ) costdata. This supplemental directory is to collect the model’s documentation and output files.

Appendix B-SIMPROCESS File Structure 368 SIMPROCESS User’s Manual .

SIMPROCESS User’s Manual 369 .APPENDIX C Statistical Distributions The following pages give a brief description of the standard statistical distributions available in SIMPROCESS. as well as their required parameters.

370 SIMPROCESS User’s Manual . To specify a uniform distribution you give the minimum and maximum values of its range. You use a uniform distribution function when all values in the range are equally likely. stream) A uniform distribution is one where the probability is constant over some range.1 0. x) 0.15 0.Appendix C .25 0.Statistical Distributions Uniform Distribution Uniform(3.05 0 0 1 2 3 4 5 6 7 8 Probability density function for a uniform distribution Syntax: UNI (minimum. maximum. 7. and zero outside that range.2 0.

50 3. This would be a problem if you were modeling something that was always positive. The problem then is that normal distributions usually do not have any restriction that keeps them from ranging to negative values.50 1. dev. the variation is large.50 2. such as time to complete a task.2 1.00 0. Two parameters characterize a normal distribution: the mean and standard deviation. Syntax: NOR (mean.00 std. if the standard deviation is small. dev. = 0. standard deviation.20 1.00 2. x 2.6 Probability density function for several normal distribution functions with means = 1.00 1.80 std. = 0.40 0. = 0.00 0.60 0.40 1.Statistical Distributions Normal Distribution Normal(1.50 4.20 0. standard deviation.00 3. You would not want to use a normal distribution if you are modeling a distribution with a large standard deviation and a peak close to the origin. the variation is small.00 0. dev. SIMPROCESS User’s Manual 371 . SIMPROCESS truncates the distribution so this problem does not occur.00 1. The standard deviation tells how much things vary around the mean: if the standard deviation is large. stream) A normal distribution (sometimes called a Gaussian distribution) produces the bell-shaped curve that is so commonly found in the real world.60 1.Appendix C .4 0.80 std.

00 0 1 2 3 4 5 6 7 8 9 10 Probability density function for a triangular distribution function Syntax: TRI(minimum. stream) A triangular distribution is very simple: it is peaked somewhere in the middle and has a finite range. and mode.20 Triangular(2.0.Appendix C . It is not usually equal to the mean unless the distribution is symmetric. you give its minimum. 8.10 0. To specify a triangular distribution.Statistical Distributions Triangular Distribution 0. perhaps you only know the range and where the peak occurs. mode.05 0.0. 6. 372 SIMPROCESS User’s Manual .0) p 0.15 0. maximum. maximum.30 0. A triangular distribution is useful when you have only a vague idea about the shape of the distribution. The mode is where the peak of the distribution occurs—it is the most likely value in the range.25 0.35 0.

6 0. then the distribution of interarrival times is an exponential distribution function. SIMPROCESS User’s Manual 373 . x) 1 0. The only number needed to characterize the exponential distribution function is the mean.5 4 4.9 0.5 1 1.Appendix C .3 0. It is related to the Poisson distribution function— if the number of arrivals in a given time are represented by the Poisson distribution.7 0.4 0.Statistical Distributions Exponential Distribution Exponential(1. The standard deviation is the same as the mean for an exponential distribution. stream) The exponential distribution function is commonly used to model interarrival times.5 5 Probability density function for an exponential distribution function Syntax: EXP(mean.1 0 0 0.2 0.5 2 2.5 3 3.5 0.8 0.

Like exponential distributions.5 3 Probability density curves for a gamma distribution function with mean = 1 Syntax: GAM(mean. 374 SIMPROCESS User’s Manual . You can see from the graph above that when shape = 1 the Gamma distribution is peaked at 0 (like the exponential distribution). such as service time. and when shape > 1 the distribution becomes peaked away from the origin. stream) Gamma distributions are based on the gamma function. which gives more control over their shape than exponential distributions. Gamma functions have a smaller variance than exponential functions and they also have two shape parameters.5 shape = 9 shape = 3 shape = 1 0 0. they are often used for times to complete a task.5 1 1.Statistical Distributions Gamma Distribution shape = 15 shape = 0. shape. which is sometimes known as the generalized factorial function.5 2 X 2.Appendix C .

shape2 shape1 = 3.4 1.4 0.8 2 Probability density curves for various beta distribution functions Syntax: BET(shape1. both shape parameters are greater than one. As beta distributions are normally used.5 0 0 0. m 1. the peak falls toward the left side of the range.Appendix C . stream) Beta distributions are similar to triangular distributions—they are singly peaked with a finite range. They are also often used when there is not much data available. minimum. Beta distributions are characterized by two shape parameters: shape1 and shape2. shape2 2 shape1 = 1. if the second parameter is larger. shape2 shape1 = 5.5.2 1.8 1 X 1.2 0. shape2 = Beta(shape1. shape2.5 max) 1 0. If the first parameter is larger.5. the peak falls toward the right side of the range.6 0.5 shape1 = 5. maximum.Statistical Distributions Beta Distribution 3 shape1 =1. SIMPROCESS User’s Manual 375 . shape2 = 2. Their range is from minimum to maximum. shape2.6 1.

5 3 Probability density function for an Erlang distribution function Syntax: ERL(mean. 2 0 0 0. 376 SIMPROCESS User’s Manual .Statistical Distributions Erlang Distribution Erlang(1.Appendix C . 4 0. shape. stream) The Erlang distribution is a special case of the gamma distribution. 6 0. 8 shape = 2 0. 2 1 shape = 1 shape = 4 0. when that time depends upon the sum of the times for a number of independent tasks.5 X 2 2.5 1 1. x) (Mean = 1 for all curves) 1. shape. It is sometimes used for modeling a time to do a certain task. 4 shape = 10 1.

scale.5 3 Probability density function for two Weibull distribution functions Syntax: WEI(shape.5 1 1.5 1 0.Appendix C . SIMPROCESS User’s Manual 377 . stream) Weibull distributions are nice smooth distributions whose shapes can be varied widely depending on the shape and scale parameters.5 shape = 2 0 0 0.5 2 2. For this reason it may be a good distribution to use if you are using it in code. 1.5 shape = 8 2 1. but you do not want to switch distributions. x) 3 2. where you wish to change the shape of the distribution appropriately for different situations.Statistical Distributions Weibull Distribution Weibull (shape.

d.50 (Mean = 1 for all curves) s.Appendix C . = 0.50 2.50 5. x) 4.00 0. = 3 1.d.d.50 0.5 0.00 2.50 s. = 4 4. It is useful for modeling skewed data sets. = 1 s.d.00 3.00 2.00 4.00 0. standard deviation.50 3.50 1.1 3.00 1.50 2.50 1.00 3.00 Probability density functions for a lognormal distribution function Syntax: LOG(mean. 378 SIMPROCESS User’s Manual .00 s.00 s.Statistical Distributions Lognormal Distribution Lognormal (1. stream) The lognormal distribution is similar to a normal distribution skewed toward zero.50 4. = 0.d.

5 Mean = 1 Mean = 2 Mean = 6 Number of Occurrences Poisson distribution for various mean values Syntax: POI(mean. the arrival of phone calls to a switchboard. the Poisson Distribution tells you what the probability is for a number occurring. Poisson distributions are very good for modeling arrivals. We may have a very good idea how many occur on average. 4 0. 3 0. Number) 0.Appendix C . 6 0. 2 0. stream) If we know on average how many statistically independent events occur in a certain time period. but have no way to predict exactly when each call will arrive.Statistical Distributions Poisson Distribution Poisson(Mean. 7 0. 5 0. SIMPROCESS User’s Manual 379 . for example. 1 0 0 1 2 3 4 5 6 7 8 9 10 Mean = 0.

stream) The Hyper Exponential distribution function takes three positive real numbers: mean1. 0.1 0 0 1 2 3 4 5 X 6 7 8 9 10 Syntax: HEX(mean1. 0.7 p = 0. 5. mean2 and probability of mean.Statistical Distributions Hyper Exponential Distribution 1 Hyperexponential(1.Appendix C .4 0.6 p = 0.2 p = 0 0. mean2. p) 0. The stream parameter specifies which random number stream will be used to provide the sample.8 p = 1. 0. 0. real number.3 p = 0.9 0. It returns a positive. 380 SIMPROCESS User’s Manual . probability of mean.5 p = 0. 0.

real integer between these bounds inclusive. maximum. stream) The Uniform Integer distribution function takes two positive.15 Integer(7.Appendix C . real numbers: lower bound & upper bound. The stream parameter specifies which random number stream will be used to provide the sample. 16) 0. SIMPROCESS User’s Manual 381 .1 0. It returns a positive.Statistical Distributions Uniform Integer Distribution 0.05 0 0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 Syntax: INT(minimum.

Appendix C . The stream parameter specifies which random number stream will be used to provide the sample. This distribution returns a positive real integer. 382 SIMPROCESS User’s Manual . mean.Statistical Distributions Geometric Distribution Syntax: GEO(minimum. stream) The Geometric Distribution takes two parameters: minimum and mean.

The position specifies where the distribution starts. The distribution is heavily peaked but the tail falls off relatively slowly. the mean is finite but then variance is infinite. shape. shape. It takes three parameters: position. the Hyperbolic distribution can have infinite mean and variance. and offset.2 position=5. shape=0.8 0. offset.5 1. both the mean and variance are infinite.6 0.Statistical Distributions Hyperbolic Distribution 1. offset. Because of the heavy tail.4 0. shape=0.6 Hyperbolic Distribution (offset = 0) position=1. If the shape parameter is less than or equal to 1.4 Hyperbolic(position. stream) The Hyperbolic Distribution is a simple power law type distribution that is useful for modeling bursty sources. the shape specifies how quickly the tail falls off. It the shape parameter is greater than 2.95 0. shape. shape=1. SIMPROCESS User’s Manual 383 . If the shape parameter is greater than 1 but less than or equal to 2.95 0 0 2 4 6 8 10 12 14 X Syntax: HYP(position.Appendix C .2 1 position=1. and the offset shifts the distribution. x) 1. both the mean and variance are finite.

Appendix C - Statistical Distributions

384

SIMPROCESS User’s Manual

APPENDIX D

Statistical Tools Glossary

Absolute Deviation
The average deviation of the data set from the mean. It is computed using the absolute value of the difference between a data point and the mean rather than squared differences used in computing the variance.

Alpha
The probability that an estimate of a parameter does not contain the true value. In statistics, this is referred to as Type I error.

Alternate Hypothesis
The complement of the null hypothesis.

Cdf
Cumulative distribution function.

SIMPROCESS User’s Manual

385

Appendix D-Statistical Tools Glossary

χ2 goodness of fit test
A goodness of fit test that uses a χ2 statistic to evaluate the goodness of fit. The χ2 goodness of fit test creates an empirical distribution for the data. The empirical distribution used is a histogram. The height of each bin of the histogram is equal to the number of points in the data set that fall between the lower and upper bounds of the bin. The χ2 statistic is computed as the sum of squared differences of the values observed for each bin of the histogram to the number of observations expected from the probability distribution over the same range as the bin.

Confidence Interval
An interval that contains the true value of a parameter with a given probability.

Continuous Domain
A domain whose variables can take on any value in an interval real numbers. Integer domains are sometimes interpreted as continuous domains with the implicit assumption that the integers represent an underlying continuous domain.

Data Set
A vector (or equivalently an array or column) of data points that are the realization of a random process.

Degrees of Freedom
The number of independent elements in a statistical computation. The degrees of freedom must be known to compute the probability of a test statistic such as the χ2 statistic.

386

SIMPROCESS User’s Manual

Appendix D-Statistical Tools Glossary

Dof
Acronym for degrees of freedom.

Enumeration Domain
A domain whose range is the set of elements in the enumeration.

Goodness of fit test
A statistical test used to determine the probability that an observed data set came from a probability distribution. The null hypothesis is that the data set is drawn from the probability distribution. The alternate hypothesis is that the data set is not drawn from the probability distribution. A test statistic is computed to evaluate the hypothesis. If the probability of observing the test statistic is small (less than alpha), the fit is rejected.

IID
Identically and independently distributed. In simulation, identical means that observations are made from a hypothesized distribution of values that does not change over simulated time. Independent means that observations of one replication are not correlated with other observations, i.e. if one observation has a value of x, then the next observation is probably close to x.

Image Editor
An editor that contains graphs, tables, or text for viewing the results of a statistical analysis.

Integer-valued Domain
A domain whose range is the set of integer numbers.

SIMPROCESS User’s Manual

387

Appendix D-Statistical Tools Glossary

KS
Acronym for Kolmogorov-Smirnov.

KS goodness of fit test
A goodness of fit test that uses the D statistic to evaluate the goodness of fit. The KS goodness of fit test creates an empirical distribution for the data. The empirical distribution assigns a probability of 1/N to each data point where N is number of data points in the data set. The D statistic is computed as the maximum difference between the cumulative distribution function of the empirical distribution and the cumulative distribution function of the probability distribution being tested.

Kurtosis
Characterizes the relative peakedness or flatness of a distribution relative to the normal distribution. A data set with positive kurtosis has a sharper peak than a normal distribution while a data set with negative kurtosis has a flatter peak than the normal distribution.

Maximum Likelihood Estimate
A statistical technique for estimating the parameters of a hypothesized distribution of a data set.

Mean
Average value of a data set.

MLE
Acronym for maximum likelihood estimate.

388

SIMPROCESS User’s Manual

Appendix D-Statistical Tools Glossary

Mode
The mode of a probability distribution is the value of x where it takes on its maximum value. If the distribution is multiply-peaked, there may not be a unique mode.

Model Element.
A named object in the simulation model that has one or more simulation input variables that can be designated as factors for an experiment. The model elements include activities, resources, and entity types.

Pdf
Probability distribution function.

Performance Measure.
An output statistic that quantifies some behavior of the model.

Percentiles
In a data set ranked by value of the data points, a percentile refers to the data point at the relative position by rank of the data point in the data set. For example, in a data set of a hundred points, the 75th percentile (75%) point is the data point that is in the 75th position when ranked by value.

Quartile Range
Difference between the 25th percentile value and 75th percentile value of the data set.

SIMPROCESS User’s Manual

389

Appendix D-Statistical Tools Glossary

Range
Difference between the minimum and maximum values of a data set.

Real-valued Domain
A domain whose range is the set of real numbers.

Residuals
The differences between the actual values observed and the expected values as computed by a statistical test.

Sample Domain
A domain whose range is the set of probability distributions supported by SIMPROCESS.

Skewness
Characterizes the degree of asymmetry of a distribution around its mean. A data set with positive skewness has a long tail to the right of its mean. A data set with negative skewness has a long tail to the left of its mean.

Standard Deviation
Square root of the variance.

Standard Error
A measure of the spread of the data set about the mean. Typically, standard error is the one sigma error about the mean of the data set computed as the standard deviation divided by the square root of the number of data points. 390 SIMPROCESS User’s Manual

Appendix D-Statistical Tools Glossary

Variance
Variability of data set about the mean.

SIMPROCESS User’s Manual

391

Appendix D-Statistical Tools Glossary 392 SIMPROCESS User’s Manual .

Current replication number. Name of the entity.APPENDIX E SIMPROCESS System Methods and Examples System Attributes This section lists all the SIMPROCESS system attributes in a table and provides examples of system methods. Default priority for entity instances of this type. SIMPROCESS System Attributes Model Elements System Levelb Attribute Namea Model Self Replication Entity Type Name Priority Get/ Set Get Get Get Get Both Attribute Type OBJECT OBJECT INTEGER STRING INTEGER Description Reference of the Model being simulated. SIMPROCESS User’s Manual 393 . Reference of the Model Element itself.

Time the entity instance was created. Maximum time entity will wait for resource allocation. Priority of this entity instance. Number of entity instances of the same type has disposed. NumberIn NumberCreated NumberDisposed Priority SequenceNum Type Get Get Get Both Get Get INTEGER INTEGER INTEGER INTEGER INTEGER OBJECT 394 SIMPROCESS User’s Manual .Appendix E-System Methods and Examples SIMPROCESS System Attributes Model Elements Attribute Namea NumberIn NumberCreated NumberDisposed Entity (instance) Name Activity CreateTime EndWait EnterTime MaxWait Get/ Set Get Get Get Get Get Get Both Get Both Attribute Type INTEGER INTEGER INTEGER STRING OBJECT REAL BOOLEAN REAL REAL Description Number of entity instances of this type currently in the system. Number of entity instances of the same type has generated. Reference of Entity Type of this entity instance. TRUE if entity wait for resources was interrupted by MaxWait time Time the entity instance entered the current activity. A number given sequentially to each entity as it is created. Number of entities instances generated for this type. Reference of Activity this entity instance resides in. Number of disposed entities instances of this type. Number of entity instances of the same type currently in the system. Name of this entity. Default is 0.0 (unlimited).

Number of entities so far exited this activity. Name of this activity. The value of the last delay. Number of units of the resource in busy state. Number of entities currently at this activity. Number of entities so far entered this activity. Number of units of the resource in idle state. Reference of the current Entity. Reference of Entity instance currently using this resource (if any). It returns the reference to the activity or process with the specified name in the same hierarchical level. Resource capacity. UnitsIdle Activity’s Group I Name Parent Entity Sibling(name : STRING) Activity’s Group II NumberAccepted NumberReleased NumberIn Activity’s Group III LastDelay Get Get Get Get Get REAL STRING OBJECT OBJECT OBJECT Get Get Get Get INTEGER INTEGER INTEGER REAL SIMPROCESS User’s Manual 395 . Reference of Activity currently holding this resource (if any).System Attributes SIMPROCESS System Attributes Model Elements Resource Attribute Namea Name Activity Capacity Entity UnitsBusy UnitsDown Get/ Set Get Get Get Get Get Get Attribute Type STRING OBJECT REAL OBJECT REAL REAL Description Name of the resource. Reference of this activity’s parent process. Number of units of the resource not available because of the application of a downtime.

& III NumOutEntities Both INTEGER Number of entities to output per connector. Number of entities must be in a batch before it can be released. II. & III Group I 396 SIMPROCESS User’s Manual . & III Group I. INTEGER. STRING Description Change the value of the next delay ONLY. II. Change the value of all future delays henceforth. II. Get BOOLEAN Assign Batch Group I. Time to wait before releasing undersize batch. Checks if the expression is activated by an entity entering from the Trigger pad. II. Assemble Group I. Copy Group I. & III MaxBatchSize MinBatchSize MaxWaitTime Both Both Both INTEGER INTEGER REAL Number of entities to batch. II. & III ActivatedByNoMatch ActivatedByTrigger Get BOOLEAN Checks if the expression is activated by an entity exiting through the NoMatch pad. II.Appendix E-System Methods and Examples SIMPROCESS System Attributes Model Elements Attribute Namea NextDelay AllFutureDelays Get/ Set Set Set Attribute Type REAL REAL. Delay Dispose Group I. Branch Group I. & III BranchName Set STRING Name of the connector to be taken by the next entity.

Change the trigger release quantity for all future triggered release henceforth. Both Both Get Both Set INTEGER BOOLEAN INTEGER INTEGER REAL. INTEGER. STRING SIMPROCESS User’s Manual 397 .System Attributes SIMPROCESS System Attributes Model Elements Attribute Namea MaxCount NumberDisposed Free Resource Gate Group I & II Group I. & III ActivatedByTrigger AutoRelCount AutoRelease LastRelCount TrigNextRelCount TrigFutureRelCount Generate Group I NumberGenerated Get Resource Join Merge Group I & II Group I. Number of entities for threshold release. II. Get BOOLEAN Checks if the expression is activated by an entity entering from the Trigger pad. Get/ Set Both Get Attribute Type INTEGER INTEGER Description Number of entities disposed to signal End Simulation event. II. Number of entities released in the previous threshold/trigger release. & III Group I & II Get INTEGER Number of entities so far generated at this activity. Whether threshold release is on or not. Number of entities so far disposed at this activity. Value of the trigger release quantity at the next trigger.

Attributes in this category can be referenced in any expression. b. II. System attributes’ names must be input as shown. II. & III NumOutEntities OutEntityType Both Get INTEGER OBJECT Number of output entities. & III Group I. & III Group I. 398 SIMPROCESS User’s Manual . Get/ Set Attribute Type Description Replenish Resource Split Synchronize Transform Group I & II Group I. II. & III a. Unbatch Group I. It returns the reference to the child activity or process with the specified name. Reference of output Entity Type. They are case sensitive. II.Appendix E-System Methods and Examples SIMPROCESS System Attributes Model Elements Process Attribute Namea Group I & II Child Get OBJECT For hierarchical processes ONLY.

SIMPROCESS System Methods SIMPROCESS System Methods SIMPROCESS System Methods Method Namea Alert Arguments MasterEditorb. Message: STRING Return NONE Description Display a message in the Alert dialog box and wait for the user to close this dialog box. Draw a sample of type real from the specified statistical distribution. Draw a sample of type integer from the specified statistical distribution. Convert an integer number to a string. Message : STRING MasterEditorb ActOrEnt : OBJECT. Make a beep sound. Beep ChangeColor CloseFile Confirm NONE NONE NONE BOOLEAN DrawIntegerSample Statistical STRING Statistical STRING Distribution: INTEGER REAL DrawRealSample Distribution: FLOAT INTTOSTR number: INTEGER number: INTEGER REAL STRING SIMPROCESS User’s Manual 399 . OK returns TRUE. convert the argument to REAL type. Color : STRING File stream: OBJECT MasterEditorb. Close the specified file. Change the color of the specified activity or entity. Display a message in the Confirm dialog box and wait for the user to respond. CANCEL returns FALSE.

it returns 0. Round the argument and return the closest integer value. STRING String1 : STRING String2 : STRING Return REAL or INTEGER REAL or INTEGER OBJECT Description Return the maximum number in the given list.Appendix E-System Methods and Examples SIMPROCESS System Methods Method Namea MAXOF Arguments list of numbers: REAL/INTEGER (all the numbers in list must be of the same type) list of numbers: REAL/INTEGER (all the numbers in list must be of the same type) Mode: STRING File Name: STRING Takes zero or more arguments. Type can be REAL. Convert a real number to a string. position2 : INTEGER String2 : STRING resourceName : STRING number: REAL NONE REALTOSTR REPLACE STRING STRING Resource ROUND OBJECT INTEGER 400 SIMPROCESS User’s Manual . MINOF OpenFile OUTPUT NONE POSITION INTEGER ReadFromFile File stream: OBJECT list of variables number: REAL String1 : STRING position1. Returns the reference to the specified Resource. return type is the same as the input list. Mode can be “input“ or “output”. Open the specified file and return the file stream object. Display the specified arguments in the Output dialog. return type is the same as the input list. Returns a string that is in String1 with part of String1 from position 1 to position 2 replaced with String2. Read values for the listed variables from the specified input file. Return the minimum number in the given list. INTEGER. This method returns the starting position of String2 in String1. If String2 is not completely contained in String1. CHAR.

do not include empty parentheses when using this method. Return the integer part of the number Update the specified dynamic label with the given value. MasterEditor) must be the first argument inside the parentheses of this method. It is case sensitive. b. Return current simulation time in hours. Returns the substring of String from position1 to position2. Display the specified arguments in status bar. This argument (i. inString. They are case sensitive. Label Name: STRING. a. Label ID: INTEGER. Retuns the length of the string. position2 : INTEGER String : STRING number: REAL MasterEditorb. SIMPROCESS User’s Manual 401 . Font Color: STRING. Display all the User Defined Attributes evaluated for the calling element since start. Since this method does not require any argument. None NONE SimTimec STATUS STRLEN SUBSTR None Same as OUTPUT inString : STRING position1. c. System methods’ names must be input as shown.e. Value: Same as Label’s Mode File stream: OBJECT list of variables REAL NONE INTEGER STRING TRUNC UpdateDynamicLabel INTEGER NONE WriteToFile NONE Write the values of the listed variables to the specified output file. It is required by the method and must be input as shown. inclusive.SIMPROCESS System Methods SIMPROCESS System Methods Method Namea ShowSystemAttributesc ShowUserAttributesc None Arguments Return NONE Description Display all the System Defined Attributes of the calling element in the Output dialog .

Appendix E-System Methods and Examples 402 SIMPROCESS User’s Manual .

value2 := DrawRealSample(“Exp(30. value2). and REALTOSTR: This example demonstrates the syntax and usage of the listed methods. MAXOF. fContinue := Confirm(MasterEditor. value2. Alert(MasterEditor. value1 := DrawRealSample(“Uni(“+REALTOSTR(minval)+”.0)”). while Cancel will end the process. put the following lines in the activity’s Accept Entity event: Beep(MasterEditor). value2). maxval := MAXOF(value1. END WHILE. SIMPROCESS User’s Manual 403 . WHILE fContinue value1 := DrawRealSample(“Exp(30. MINOF. DrawRealSample. fContinue := TRUE.System Method Examples System Method Examples Method Alert and Beep: For example. Method Confirm. minval := MINOF(value1. fContinue : BOOLEAN. to display a message and sound alarm when an entity enter an activity. value1. maxval. It draws a number from an Uniform distribution whose minimum and maximum parameters are results from an Exponential distribution with a mean of 30.0)”). “The value is “+ REALTOSTR(value1)). “Press OK to continue!”). Beep(MasterEditor). The result is displayed in a message box with OK and Cancel buttons. Pressing OK will continue this process again. minval : REAL.” +REALTOSTR(maxval)+”)”).

process icon “Process”. ChangeColor(Entity. and change the activity icon to green if there is no entity in it. “Red”).Appendix E-System Methods and Examples Method ChangeColor: This method changes the color of a non-bitmap icon. For example. 404 SIMPROCESS User’s Manual . The Table . For example. “SIMPROCESS Color Table. Method ShowSystemAttributes and ShowUserAttributes: These methods display all the system defined and user defined attributes with their current values of the calling element in the standard output window. activity icon “RectangleIcon”. “Green”). to change an activity to red whenever an entity enters.” contains the 64 colors available in SIMPROCESS. and all the provided entity icons can use this method to change their color. to display the system defined attributes of an activity when an entity enters. “Brown”). To change the color of all entities that leave the activity to brown. in the activity’s Accept Entity event put: ShowSystemAttributes. All the system defined attributes and values are listed in the standard output window. in the activity’s Release Entity event add: IF (NumberIn = 0) ChangeColor(Self. Currently. END IF. in the activity’s Accept Entity event add: ChangeColor(Self.

NumberIn). Or. you need to define a dynamic label in the work area first. For example: Entity. The first one is MasterEditor. For example. beginning on page 213. where the expressions above are placed on the activity. It can be a constant or an attribute. This is the key word that must be there and input as shown. but the data type must match the Mode defined in Background Text Properties. The forth argument is the color to be used in displaying this label.StartTime := SimTime. { StartTime is a REAL global entity instance attribute. to display it in the status bar: STATUS(“Number of orders currently held in Gate10 is : “. NumberIn). } Method OUTPUT and STATUS: To display a message in the standard output window: OUTPUT(“Number of orders currently held in Gate10 is : “. The last argument is the value to be displayed. The next two arguments are the Name and ID of the dynamic label defined in the Background Text Properties dialog box. Assume you have already defined a dynamic label SIMPROCESS User’s Manual 405 . Method UpdateDynamicLabel: To use this method. refer to Chapter 10–Customizing a Model with Attributes and Expressions. Gate10.System Method Examples Method SimTime: This method returns the current simulation time in hours. The return value is REAL type. Five arguments are required for this method. To define a dynamic label. you want to display the number of entities generated at a Generate activity.

The mode must be either “input” or “output” (not casesensitive). Either file can be placed elsewhere as long as the path is specified in the OpenFile statement. while “output” opens a file to write. “myoutput. 406 SIMPROCESS User’s Manual . OpenFile(Mode. The first parameter of this method must be MasterEditor and input as shown. ReadFromFile. and WriteToFile: OpenFile opens the file specified in the Filename field for either input or output. Model. The next example opens a file (myinput. ID of 0. i. “Input” opens a file to read. Then. First.Appendix E-System Methods and Examples with the name ”total”. Method OpenFile. define a Model Attribute MyOutStream that is type Object. 0. In the Release Entity event of the Generate activity add the following line: UpdateDynamicLabel(MasterEditor. and data type of INTEGER. Any other specifications will lead to an error message. By default.dat”).dat) for input and keeps the return value in the model attribute MyInStream. Model. Filename) : OBJECT. SIMPROCESS will look for either input or output files in the directory of the active model. The following example opens a file (myoutput. “DarkBlue”. so the file will not be opened more than once. CloseFile. type the following statement in one of the expressions. OpenFile returns an Object type value which is required in CloseFile. NumberGenerated). “total”.dat) for output. It is the best to put the statement in the Start Trial expression.e. ReadFromFile. and WriteToFile methods. “myinput. Both arguments are STRING type.dat”). they must be surrounded by “ “.MyInStream := OpenFile(“input”.MyOutStream := OpenFile(“Output”.

Any other value will cause an error. The type of value to be read in is dependent on the specified variable type. String is a sequence of characters. Following the stream argument is a list of variables whose values are going to be read in from the file. In the input file. A mismatch will cause an error. Boolean can only be either TRUE or FALSE. From the previous example. List of variables). Model. ReadFromFile(Input Stream. or new line characters). There is also a predefined special delimiter “|” in SIMPROCESS. The following table shows the valid types for different value types. You can use “|” to separate values. surround the whole string with “|”. or float an integer value to real for a Real type variable.MyInStream would be the input stream.System Method Examples ReadFromFile reads the specified numbers of values from a file that is open for input. Integer and real are any valid numerical values. The first argument is the input stream. the model attribute. Boolean values are not case sensitive. If spaces are included. space. Value Types in File Variable Types Integer Real String Boolean Object Integer OK FLOATed OK Error Error Real Truncated OK OK Error Error String Error Error OK Error Error Boolean Error Error OK OK Error SIMPROCESS User’s Manual 407 .e. values should be separated by one or more white spaces (i. You can surround the whole string with a pair of “|” and ReadFromFile will read in whatever is inbetween as one value. ReadFromFile will either truncate a real value to integer for an Integer type variable. from a previous OpenFile call (the file must be open for input). tab. This delimiter is very useful to separate values (strings) that contain any white space.

The first argument is the output stream. For these to work correctly. IntVal : INTEGER.89. WriteToFile writes the values of the specified variables to a file that is open for output.MyInStream. ReadFromFile(Model.”. BoolVal : BOOLEAN.Appendix E-System Methods and Examples Example: The input file contains: |This is a test for ReadFromFile. WriteToFile(Output Stream.89 TRUE The expression reads as: StrVal : STRING. ReadFromFile(Model.MyInStream. Any kind of format or spacing has to be output explicitly by the user. RealVal has the value 67. BoolVal). StrVal. List of variables). while “/” will advance to a new line. BoolVal has the value TRUE. IntVal has the value 123. 408 SIMPROCESS User’s Manual . Following the stream argument is a list of variables whose values are going to be written to a file. they must be written individually and be surrounded by “”. There are two special characters that can be used in formatting outputs: “^” will write a tab to the file. RealVal. IntVal).| 123 67. RealVal : REAL. The expression will read in the following: StrVal has the value “This is a test for ReadFromFile. The output values will be written to the file consecutively. that is the returned value from a previously OpenFile call (must be open for output).

respectively. “^”). Close the files myoutput. StrVal.System Method Examples For example: Following the prior example of ReadFromFile. IntVal.MyOutStream. CloseFile(Model.dat. “/ ”. Write to the file as: This is a test for ReadFromFile. WriteToFile(Model. 123 67. an expression has: WriteToFile(Model. CloseFile(IOStream).89 TRUE CloseFile closes the file the IOStream pointed to.MyOutStream. BoolVal).MyOutStream).MyInStream). Typically. SIMPROCESS User’s Manual 409 .dat and myinput. especially if you put OpenFile in the Start Trial Expression. For example: CloseFile(Model. you will place CloseFile in the End Trial Expression. RealVal. “^”.

Appendix E-System Methods and Examples SIMPROCESS Color Table 0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 Black (Default) White Red Green Blue Yellow Cyan Magenta DarkGrey Grey DarkRed DarkGreen DarkBlue DarkYellow DarkCyan DarkMagenta Aquamarine MediumAquamarine CadetBlue CornflowerBlue DarkSlateBlue LightBlue LightSteelBlue MediumBlue MediumSlateBlue MidnightBlue NavyBlue SkyBlue SlateBlue SteelBlue Coral Firebrick Brown 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 SandyBrown Gold Goldenrod LightGrey MediumGoldenrod DarkOliveGreen ForestGreen LimeGreen MediumForestGreen MediumSpringGreen PaleGreen SeaGreen YellowGreen DarkSlateGrey DimGrey Khaki Maroon Orange Orchid DarkOrchid Pink Plum IndianRed OrangeRed VioletRed Sienna Tan Turquoise DarkTurquoise Violet Wheat GreenYellow 410 SIMPROCESS User’s Manual .

and can be opened using a text editor or spreadsheet. in a standard format that can be opened by many different applications. Select File/Export/Simulation Results to open the Save Statistics dialog box. by default have a .APPENDIX F Simulation Results File The Simulation Results file is generated from the File menu. The file will contain the complete statistical measures corresponding to the reports selected for the current model. This file give you raw statistical data that is displayed in the Standard and Custom Reports.xpt file extension and be saved to the current model directory. This file is tab-delimited. SIMPROCESS User’s Manual 411 . The Simulation Results file will.

See Table 5. The four types are: • • • • • Entity: representing an Entity Type Activity: representing an Activity Resource: representing a Resource TimeStamp: representing a Time Stamp Attribute: representing an Attribute Owner Name This is the full hierarchical name of the specific object that owns this statistic record.Stat Types. or Resources. Activities. Contained in the third column from the left.” on page 414 for a complete description of the types of statistics. Each record contains the following fields or columns: Owner Type This is the type of the object that owns this statistic record. 412 SIMPROCESS User’s Manual . “Simulation Results .External Event Files Format of the Simulation Results File Each line of the exported simulation results file is a statistic recorded for objects such as Entity Types. Name This is the name of the specific object that owns this statistic record.Appendix G. the Stat Type is an abbreviation for the name of the performance measure whose parameters follow to the right. Stat Type This is the type of statistic displayed.

if this is observation based. Any number. Sum of Squares It is the summation of the square of each observed values (i. If the replication number is 0.e. SIMPROCESS User’s Manual 413 .e. refers to a specific replication. ∑(Xi2)). An -1 means that this statistic is the average of all replications. it is the summation of the square of each observed value multiplied by the time that this value has persisted in (i. Maximum This is the largest value that has been recorded for this statistic. if this is observation based. it is the total of each observed value multiplied by the time that this value has persisted in (i. ∑(Xi*∆T)2).e. Xi * ∆T). For time weighted. the statistics are sum of all replications. Xi). Sum It is the total of all observed values for the statistic (i.e. For time weighted. 1 or greater.Appendix G-External Event Files Replication This number is the replication that the statistic was collected from. Minimum This is the smallest value that has been recorded for this statistic.

Simulation Results . and process) Time waiting for available resource Time waiting for condition to be reached Time processing (i.e. Std Deviation This is the standard deviation of the statistic. hold. at specified duration) Number of entities in system Number of entities waiting for available resource Number of entities waiting for condition to be reached tokenwaitdelay tokenholddelay tokenprocessdelay tokenlevel tokenwaitlevel tokenholdlevel 414 SIMPROCESS User’s Manual .External Event Files Count This is the number of observations recorded when the statistic was collected.Stat Types Descriptions Labels Entities : tokendelay Type of Statistics Observation based Observation based Observation based Observation based Time-weighted Time-weighted Time-weighted Total cycle time (i.e.Appendix G. Average This is the average of the statistic. TABLE 5. sum of wait.

at duration) Number of entities being generated Number of entities still residing in the system Number of entities detroyed Statistic of the specified attribute Statistic of the specified attribute Labels tokenprocesslevel tokentotalborn Type of Statistics Time-weighted Only the last value is recorded Only the last value is recorded Only the last value is recorded Observation based Time-weighted tokentotalalive tokentotalkilled UDV.level Resources : resrccap resrcidle resrcbusy resrcmaintenance Time-weighted Time-weighted Time-weighted Time-weighted Units of resources (i. capacity) Units of idle resources Units of busy resources Units of resources not available (Unplanned Downtime) Units of resources not available (Planned Downtime) Units of resevered resources resrcdown Time-weighted resrcreserved Time-weighted SIMPROCESS User’s Manual 415 .e.Appendix G-External Event Files TABLE 5.e.delay UDV.Stat Types Descriptions Number of entities in process (i. Simulation Results .

Stat Types Descriptions Units of busy resources at the specified activity Labels Type of Statistics byactivitybusy. sum of wait. and process) for the specified entity type at this activity tokentotalhere tokentotalout tokendelay tokenwaitdelay tokenholddelay tokenprocessdelay bytoken. in the specified durations) at this activity Total cycle time (i.level Time-weighted Activities : tokentotalin Only the last value is recorded Only the last value is recorded Only the last value is recorded Observation based Observation based Observation based Observation based Observation based Number of entities entered this activity Number of entities still residing in this activity Number of entities that have left this activity Total cycle time (i.Appendix G.e.e.e.External Event Files TABLE 5. and process) at this activity Time waiting for available resource at this activity Time waiting for condition to be reached at this activity Time processing entities (i.delay 416 SIMPROCESS User’s Manual . sum of wait. hold. hold. Simulation Results .

level Time-weighted SIMPROCESS User’s Manual 417 . in the specified durations) for the specified entity type at this activity Number of entities at this activity Number of entities waiting for available resource at this activity Number of entities waiting for condition to be reached at this activity Number of entities in process (i.delay Observation based bytokenprocess.e.at duration) at this activity Number of entities of the specified type at this activity Number of entities of the specified type waiting for available resource at this activity Labels bytokenwait.level Time-weighted bytokenwait. Simulation Results .delay Type of Statistics Observation based bytokenhold.e.delay Observation based tokenlevel tokenwaitlevel Time-weighted Time-weighted tokenholdlevel Time-weighted tokenprocesslevel Time-weighted bytoken.Stat Types Descriptions Time waiting for available resource for the specified entity type at this activity Time waiting for condition to be reached for the specified entity type at this activity Time processing entities (i.Appendix G-External Event Files TABLE 5.

External Event Files TABLE 5.at duration) at this activity Statistic of the specified attribute Statistic of the specified attribute Labels bytokenhold.Appendix G.level Time-weighted UDV.e.level Type of Statistics Time-weighted bytokenprocess. Simulation Results .level Time Stamps : tokendelay Observation based Time-weighted Observation based Time elapsed between Time Stamps 418 SIMPROCESS User’s Manual .delay UDV.Stat Types Descriptions Number of entities of specified type waiting for condition to be reached at this activity Number of entities of the specified type in process (i.

01/02/1995 01/04/1995 09/11/1994 SIMPROCESS User’s Manual 419 . For example. Records must also adhere to these general rules: • • Each record in the file defines one generation event.APPENDIX G External Event Files General Rules for Event Files External event files define entity generation events. SIMPROCESS reads the file at the beginning of a simulation run and schedules the generation of Entities as defined in the file. If event files are referred to in a Generate activity. which are defined in the following section. Records must be ordered by entity create time. 3. SIMPROCESS will not generate entities for any event record whose entity create time is earlier than that of the previously processed event. Each record (line) in an event file must adhere to certain syntax rules. 2. There is no way to continue a record on the following line. in the following sequence of creation dates: 1.

However. 5. because its creation date is earlier than that of record 2.External Event Files 4. you can refer to a new type in the event file and select the Selected in the list option in the External File Schedule dialog box. 420 SIMPROCESS User’s Manual . 10/30/1994 01/12/1995 Records 1 and 2 are processed. Record 3 is bypassed.Appendix F. Records beginning with an asterisk (*) are considered comments and are ignored by SIMPROCESS. • • • Any literal values with imbedded blanks must be enclosed in quotation marks (" ") when included in event records. Real numbers must include a decimal point. the last record for which entities were generated. The entity type you specify in an event record must be defined to the model before it can be generated. The remaining keyword parameters may be entered in any order. SIMPROCESS will automatically add it to the model. • • Entity create time must be the first field in the event record. Record 4 is also bypassed. because its date is earlier than that of record 2.

Appendix F-External Event Files Event Record Description In the following syntax diagram: • • • Syntax Items in BOLD face must be entered exactly as shown. Items in italic face represent variables for which you must substitute a value. at noon is represented as: 01/15/1997 12:00:00 You can enter either real numbers or integers to indicate relative values: real numbers are assumed to refer to hours. January 15. time The time at which entities are to be created for this event record.. 1997. Items enclosed in brackets ([]) are optional. Use the following format for a specific date and time: mm/dd/yyyy hh:mm:ss Where.] Parameters + Indicates that the ensuing value is to be added to the time of the last event processed. [+]time [QUANTITY:value] [ENTITY: type] [ATTR: name=value.0 SIMPROCESS User’s Manual 421 . while integers refer to days. Specify either a specific date and time or a relative value. for example.. Forty-eight hours after the start of simulation is shown as: 48.

enclose the entire string in quotes. For example.External Event Files Which is the same as two days after the start of the simulation: 2 Forty-eight hours after the previous entity generation event: +48. If QUANTITY is omitted. Although SIMPROCESS will accept this value. unless you precede it with a plus sign (+).0 or +48:00 or +2 Notes on specifying event time: • • You can omit seconds when specifying the time.0 +48:00 48 hours after the start of simulation 48 hours after previous generation event • SIMPROCESS will accept a 2-digit value for the year. SIMPROCESS uses the default Quantity value in the Generate Activity Properties dialog box. For Type. It assumes that values over 49 refer to years in the 20th century. ENTITY: type The type of entity to generate. Do not specify a time in hh:mm without a date.Appendix F. QUANTITY:value The number of entities to generate at the entity generation event. and values under 50 refer to the 21st century. enter an entity type name. 422 SIMPROCESS User’s Manual . SIMPROCESS assumes a zero for the omitted parameter. its interpretation is unpredictable. If the name includes blanks. acceptable formats are: 48. Enter a number in place of value.

you can select the Selected in the list option in the External File Schedule dialog box.. You can assign values to any number of attributes in the VARS argument. the entire event record is considered invalid and is bypassed.Appendix F-External Event Files If ENTITY is not specified. If a record contains any syntax error or undefined model element (without using Selected in the list option). ATTR: name=value. SIMPROCESS uses the default Entity value in the Generate Activity Properties dialog box. SIMPROCESS User’s Manual 423 . SIMPROCESS will add it to the model. The value you specify must be consistent with the data type defined for the attribute. Note that if you specify an attribute name that has not been defined in your model.. Assigns values to globally defined attributes for entity instances.

on January 3.0 ENTITY:Truck 6.m. 3. +7:00 QUANTITY:4 ENTITY:RedDot 4. on January 1. 6. 2:00 p. January 1.m. January 1. 1995. 424 SIMPROCESS User’s Manual . the events occur at the following times: 1. Generate GreenDot entities at 3 a. 2:00 a.000 to user attribute Weight. so the record is discarded.m. 1995. January 3. Generate more Truck entities 4 hours after the previous event.m. Generate two RedDot entities at 4 a. Assign a value of 50. 1995.0 QUANTITY:6 ENTITY:RedDot 3.m.Appendix F. Generate a Truck entity at 2 a. Generate the number of entities defined in the Generate Activity Properties dialog box. The specified time is earlier than the time of the previous event.m. Heavy" 5. on January 3. 6:00 a. 1995: 01/03/1995 04:00:00 ENTITY:RedDot QUANTITY:2 Notes on the Examples If the examples are processed during a simulation which begins at midnight. 3:00 a.External Event Files Examples 1.m.m. 1995. Never. 1995. January 3. January 1. January 1. 5. 1995. 1995. 1995. (14:00) 4. 7:00 a. 7. Generate four RedDot entities 7 hours after the previous entity generation. 2. and the string "Yo. 01/01/1995 03:00:00 ENTITY:GreenDot 2. Generate the number of entities defined in the Generate Activity Properties dialog box: +4. Generate six RedDot entities 7 hours after the simulation begins. Heavy" to user attribute Tag: 01/03/1995 2:00 ENTITY:Truck ATTR:Weight=50000 Tag="Yo.

50. choosing 58 icons. 230 Entity Priority 111 User Defined Attributes 111 Attribute Value Initialization 246 Attributes Model Parameter 224 Model Paramters 81 System 218 User Defined 220 Automatic saving 22 B Background Graphics 160 Batch Activity 103–104 Batched Entity 104 Maximum Batch Size 104 maximum number of entities 104 Maximum Wait Time 104 Minimum Batch Size 104 parent entity 104 Batched Entity. defining 57. 230 Batch 103–104 See also Batch Activity Batch. of Batch activity 104 Both must be reached. 65–67 displaying name under icon 58 Document command 59 documenting 59 entity processing time 57 Gate 106–108 entity release policies 106 gating policies 106 Generate 264–279 Generate. defining 57 Synchronize 109 Text Block 60 time required to perform 65 Transform 113–115 267 SIMPROCESS User’s Manual 425 . system attributes of 218 Branch 116–119 Comment (dialog field) 58 commenting 58 connecting 52 definition of 9. showing name under 58 icons. 17 A 239 activities adding to model 55–56 Assemble 100–102 Assign 111–112. types 58 linking 52 Local Attributes 228 Name field 58 Properties dialog 56–60 removing from model 56 resources needed by. 51 Delay 51 delay time. Generate schedule field bottlenecks sources of 52 16.Index Symbols .doc extension Unbatch 105 using activity attributes in an expression Activity Properties dialog fields 56–60 Activity-Based Costing 164–176 Cost Calculations 175 Cost Periods 170 Reports 177–179 Resource Costs 172–174 adding objects to a model 55–56 animation changing during simulation 82 settings 82 Application Default Parameter Setting 204 Assemble Activity 100–102 batch component entities 101 Assemble component entities pad 100 Assign Activity 111–112. See Generate Activity icons. labeling 59 icons.

option of Transform activity 114– 115 Count Limit. calendar calendar schedule 267 changing entity type 113 Clipboard 328 Color palette 327 Comment field 57. displaying 119 Properties dialog box 119 converting entities from one type to another 113 Copy Activity 99 Copy Attributes. 192 cyclical schedules 269–272 defining 269–272 See also sequence of events types 269 D Database 206 Commit to Database 45 database graphs 319 Database Queries 317 database reports 319 Date field in calendar events 274 Delay Activity 51. 120 changing attributes 119 defined 52 definition of 9 names. specifying 65–67 deleting objects 56 Display Error Alerts 350 Display Error Alerts Field 343 Displaying ABC Reports 177 Dispose Activity 68 Distribution Beta 375 Erlang 376 Exponential 373 Gamma 374 Geometric 382 Hyper Exponential 380 Hyperbolic 383 Lognormal 378 Normal 371 Poisson 379 Triangular 372 Uniform 370 Uniform Integer 381 Weibull 377 distributions viewing graphically 63 Document command template for 59 text editor for 59 Downtime Schedule 280 Duration for Assemble activities 102 for Batch activities 104 426 SIMPROCESS User’s Manual . 65–67 Delay Duration for Assemble activities 102 for Batch activities 104 for Unbatch activities 105 Delay Time field 65 delay time.Index Branch Activity 116–119 Branch Connectors 119 C calendar dates effect on simulation 78 calendar event. See events. of entity release 267 Create Process/Activity From Menu cycle time definition of 9 Dispose activity and 68 ending 68 reports 188. 58 Commit to Database 312 Connectors and Branch Activities 120 definition of 9 connectors Auto Label 120 Branch Activities and 116. 65.

121 changing 111 in Assign Activity 111 of transformed entity 115 released by Gate Activity 106 removing 72 reports 185 Transform Activity and 113 type (defined) 69 entities cyclical generation 269 generation 264 generation schedule in event file 276 none generated. 105 disposal of 68.Index Duration field 272 E Edit Element Parameters (Edit Ele Parm) 204 Edit Library Parameters (Edit Lib Parms) 206 editor. 104 priority 70. Recorder Objects 292 tracking arrival and departure times 296 using entity attributes in an expresssion 238 Entities. 296 Recorders 296 Time Stamps 291 events calendar 267–276 Date field 274 trigger point 274 changing sequence of 270–271 Count Limit 273 Duration 272 duration of 272–273 inactive periods 276 Move 270 moving 270 No event 276 number of times executed 271 Repeat Event 273 repeating 271 scheduling of 276 sequence of 270 SIMPROCESS User’s Manual 427 . 70. reasons for 264 Recorder 296 Time Stamps vs. See Batch Activity Entities. batching. 292. specifying 59 Entities adding 69–72 assembling 100–102 branching on priority 117 branching on type of 117 changing type of (Transform Activity) 113 combining 100–102 coordinating release of 109 copying 71 creation of 51 cycle time 68 defined 51 defining 62. selecting 278 identifying to SIMPROCESS 277 new entities specified in 278 Event Logs 291. 71 input to Gate Activity 106 instance (defined) 69 origination of 51 parent entities 103. limiting number in Dispose 68 entity count 186 event cycles Repeat Sequence 271 repeating 271 scheduling of 275–276 types 269–270 event files 276 all defined option 278 checking syntax of 277 entity types. 117. 69–72 deleting 72 destruction of 68. selecting 69. accumulating 106 Entities. 105 duplicate (Copy Activity) 124 Generate activity and 62 icon.

267 limiting number of entities generated 267 Monthly schedule item 268 periodic schedule. 61–64. defining 267 complex. 266 entity release begin and end dates 264 events. defining 269–272 Daily schedule 268 Date schedule 268 Define Entity 62 defining 61–64 defining complex 264–279 entities generated 61–63. 348 Experiments Defining Experiments 340 Entering Design Information 344 Entering Experiment Information 342 Entering Model Information 343 Entering Model Parameter Information 345 Entering Process Alternative Information 346 Entering Scenario Information 345 Running Experiments 348 Starting Experiments 348 Expressions 234–256 Language Basics 234 Using Attributes in 237 external data. 348 Run Selected Experiments 46. See sequence of events external event file 276 inactive periods 276 Interval 62–64.Index single event 276 upwards option 271 Experiment Manager 339 Database Tables 340 Define Experiments 45. input to Generate activity See event files G Gate Activity 106–108 entity release policies 106 gating policies 106 Threshold Release 107 Trigger Release Quantity 108 used as a buffer 106 Generate Activity 55. defining 266 Quantity 62 Release Begin 264 release dates and simulation dates 264 Release End 264 schedule calendar 268 Daily 268 Date 268 defaults 266 file input 276 number of entities at each release 266 Use default 266 Weekly 268 schedule items adding 265 Both must be reached 267 copying 266 Count 266 Count Limit 267 defining 265–269 deleting 266 428 SIMPROCESS User’s Manual . using 276 external files 276 F file. defining 264–279 Count Limit 267 cyclical schedule. 348 Run Specific Experiment 46. 264–279 active period of entity release 264 Both must be reached 267 calendar schedule. 340 Experiment Errors 350 Experiment Operation 349 Experiment Setup Form 342 Experiment Trace 349 Generating Standard Reports 353 Interacting With Experiments 352 Run All Experiments 46.

of Gate activity 106 Hyperexponential Distribution 380 I Icon dialog field 58 icons activity icons 58 adding text to 59–60 entities. 314. events 270–271 moving up a level in hierarchy 82 N Name (dialog field) 58 naming activities 58 no entities generated. 329 Initializing attribute values 246 Integer Distribution 381 interval between entity generations Interval dialog field 62 L Launch Database Application 45. 321. M Manage Results form 314. of Batch activity 104 model adding objects to 55–56 checking for errors 81 components 50–52 hierarchical structure 50–51. 340 Library Concepts 200 Default Parameter Settings 204 Management 202 limiting entities in Dispose activity 68 Local Attributes defining 228 267 62–64. 321 Maximum Batch Size.Index editing 265 entity categories 266 Interval 267 limiting number of entities 267 modifying 265 Monthly 268 periodic 266 removing 266 Yearly 268 Summary 278 time between entity generation events Weekly schdedule 268 Yearly schedule item 268 Global Attributes defining 221 H help. of Batch activity 104 Minimum Batch Size. listing 71 labeling 59–60 showing object name under 58 Image Editor 328. Dispose activity parameter 68 Maximum Wait Time. of Batch activity 104 Maximum Entity Count. ascending 82 historical data See also event files historical data. 52 removing objects from 56 selecting objects in 56 using Model Attributes in an expression 239 Verify Model 81 verifying 81 Model Attributes defined 220 using in an expression 239 model design 313 Model Parameter 224 Model Parameters 81 Move command. reasons No Event schedule 276 62 264 SIMPROCESS User’s Manual 429 . using 276 Hold pad. getting help topics 47 online help 60 hierarchical models 50–51 hierarchy.

in Synchronize activity O objects adding to draw space 55–56 deleting 56 removing from draw space 56 selecting several 56 Output Entity. 99 R 76 pads Assemble and Release (Assemble Activity) 100 connecting input and output 76 connecting levels in model hierarchy 75 defined 52 definition of 12 Hold and Trigger pads (Gate Activity) 106 input pads 109 number of in Synchronize activity 109 Synchronize Activity 109 Palette bar contents 55 using 55–56 palette icons 212 Parameter Setting in Library 204 parent entities 103 parent entity 104 PDF manuals 47 periodic schedule 266 priority of transformed entity 115 priority. 267 Release End 264. 111 branching on 117 probability branching on 117 Probability distributions 303 processes and model hierarchy 50–51 connecting sub-processes 76 defining 74–76 random distributions specifying 62–64 random number stream 64 Recorder Objects output file (recorder.msg) 296 Recorders Definition of 296 Release Begin 264. Assemble activity P 109 101 definition of 10. of entities 70. events 271 Reports ABC 177 activities 191–194 attributes 190 Costs 177 default 182 entities 185–188 resources 188–190 Standard 182 Resources activities and 51 430 SIMPROCESS User’s Manual .Index Nod file 59 Number of Pads. 267 Release pad (of Assemble) 100 removing objects 56 Repeat Sequence. 50 modifying 74 sub-processes 74–76 activating 75 active 75 alternatives 75 connecting to higher levels copying 75 deleting 75 modifying 75 moving up a level 76 Q Queue Gate activity 106 hold for condition 99 wait for resource 52.

on Assign activity 112 Show Name checkbox 58 Show Text checkbox 60 SimDraw 46 Simluation Output Display ABC Reports 174 simulation animation options 82 settings 82 showing entities 70 slowing 41 changing animation options 82 duration of 68. of Generate activity 265 Selected Field 343 sequence of events Both must be reached 273 calendar 273 entity generation start time 274 entity generation. 77 running a simulation 81 Running a Simulation with Model Parameters S 81 scenario 314 Schedule of events 270 schedule. run time 42. start of 275 start time 274 definition periodic 272–273 Both must be reached 273 start time 272 Set Entity Priority To. 301 Statistical Distributions 369 statistical distributions 308 specifying 62–64 Statistical Output Define Global Statistics Collection 44 Define Real-Time Plots 44 Display ABC Reports 45 Display Standard Report 45. 77 End Date 77 ending 68 length of. 83 Entity Statistics 185 Process/Activity Statistics 191 Resource Statisitcs 188 Simlation Results File 195 Time Stamps 294 using spreadsheet 83 SIMPROCESS User’s Manual 431 . on Assign activity 111 Set Entity User Attributes. 77 Pause 82 pausing 82 ratio of real time to simulation time 41 restart after pause 82 resuming after pause 82 run dates 77 run time settings 42. 77 running 77–83 slowing down 41 Start Date 77 starting 81 stopping 68 stopping temporarily 82 Simulation (menu item) 82 Simulation Output Display ABC Reports 177 Display Standard Report 182 single event 276 Standard Output Report 182 StatFit 46. in calendar time 77 Max Count and 68 options.Index adding 73 allocation policy 137 availability of 52 defining 73 definition of 11 Downtime Schedule 280–290 entities and 51 variable usage 232 root image 334 Run Settings 40.

Index Statistical Simulation Experiment 306–307 Experimental Data 306 Mean-Value Analysis 306 Stream 64 Style palette 327 Sub-Processes 74–76 definition of 11 See also processes. 230 Branch On 117 copying in Transform activity 115 globally defining 221–227 initializing values 246 locally defining 228–229 User Defined Distributions Procedures 90 Two methods of creation 90 User Defined Functions 257 V Verify Model command 81 View function 63 viewing higher levels 82 432 SIMPROCESS User’s Manual . 275–276 Trigger Release Quantity. 105 Use default 266 User Defined Attributes 220 and Assign Activity 111. of Gate activity 107 Threshold Release. of calendar event 274. Gate activity policy 106. sub-processes Synchronize Activity 109 System Attributes 218 T Tabular Distributions Procedures 92 Template Under Definepull down menu 206 Template file directory 59 template. of Gate activity 106 trigger point. 108 U Unbatch Activity 105. option of Assemble activity 100. of Gate activity 108 Triggered Release. 230 assigning values to 111. 101 Trigger pad. option of Gate activity 107 Time Series Report 186 Time Stamps Assembled Entities 295 Batched 295 Definition of 291 passing to an output entity 295 Transformed Entities 295 Viewing Reports 294 Transform Activity 113–115 Copy Attributes 114–115 Number of Entities Output 113 Output Entity Type 113 Trigger Assemble. for Document file 59 Templates Defining and Editing Templates 202 Editing 202 Text Block 60 Show Text 60 Threshold Quantity.