A customized linked spreadsheet gives Process Charter for Windows the smarts that plain flowcharters lack
David Essex
Flowcharting, like outlining, is one of those things you should have taken more seriously in college. When faced with the chaos of work in the Age of Downsizing, you come to realize that, far from being a pointless exercise, flowcharting can be the best way to conceptualize a process that needs fixing.
Scitor Corp. has hit on an absurdly simple idea. Instead of merely making a robust set of graphical flowcharting tools and offering links to spreadsheets, Scitor has coupled an actual, process-optimized spreadsheet to the drawing tool. The result is
Process Charter
, an easy-to-use program that lets you simulate processes depicted in the flowchart.
We used Pr
ocess Charter to design a half-dozen flowcharts depicting various editorial processes, both existing and wished-for. We ended up throwing most of them out, learning much about the proper uses and key limitations of Process Charter along the way. (The moral: make sure you've clearly designated the entities that flow through the system; or, a system framework does not a simulation make.) We ended up converting an existing paper flowchart of a BYTE article's flow through the magazine's editorial, design, and production departments. A work in progress, this imposing chart is potentially an important tool for editorial management.
Discrete Events and Queuing
Process Charter is a discrete event simulator. It calculates the state of the system elements at discrete points in time. At a higher level, systems are either
deterministic
or
stochastic
: perfectively predictable if all conditions are met, or relatively more random if some conditions are varied. Of the stocha
stic type, simulations may be either
continuous
or
discrete
, which are to each other what analog is to digital. In discrete models like those created by Process Charter, systems are profiled by taking "snapshots" of the system state at fixed intervals.
Hand-in-hand with discrete event simulation is the concept, often seen in computer science, of queuing. In the context of simulation, queuing is widely relevant because it models the basic input-process-output functions of all systems. But queuing in the same context also means lining up and (sometimes) waiting for service. Simulation textbooks often cite a classic queuing problem: customers lining up at a bank to wait for the next available teller. Not surprisingly, Process Charter comes with a sample bank-teller simulation, which is explained in the figure,
"The Bank-Teller Queuing Problem"
.
It's not hard to see why queuing is a key concept in Process Charter. A case in point: in our article-flow simu
lation, queues can result if articles enter the system faster than any one component can process them. A queue then becomes a bottleneck to be avoided by redeploying resources. Process Charter gives you specialized Flow Model and Key Values spreadsheets (again, refer to the figure) for identifying bottlenecks by examining time values in cells.
Charting the Process
The first step in modeling a process with Process Charter is to create the flowchart. Here, the program works like a standard flowcharting tool. Toolbar icons and menu items let you access the three main views: diagram, spreadsheet, and graph. In the diagram view, the main control panel is a square on the left toolbar containing four small icons, each representing an entry mode: Select (for selecting a chart item for some additional operation); Figure, Line, and Text. We found ourselves relying on the mode buttons almost exclusively, even though most icon functions are duplicated in the drop-down menus, and a few func
tions (like line creation) are available via mouse control in other modes.
A palette of standard shapes (e.g., a diamond for a branching decision point, a parallelogram for input/output, etc.) sits handy along the left side. To use a shape, you click once on the palette icon, then point at the main window and click again to place the object. Connections between objects are most easily established by clicking in the middle of the originating object and dragging to the location of the destination object. An arrow will appear between the two figures. Alternatively, you can drag-and-draw lines in Line mode, but we sometimes found Process Charter too smart for its own good as it tried to figure out the best path between objects. Lines seemed to wrap unexpectedly around the far sides of objects, and one time, we ended up with a tangle of lines that looked too confusing. We could have used a menu command to delete all the lines, but we scrapped the entire chart instead.
Once you've got a dozen objects
and lines on the screen, the ability to modify the configuration becomes critical. Here, Process Charter provides adequate tools, chief among them the ability to draw a box around an area and drag it. You can also reshape lines and make objects "snap to grid" so they line up with each other after your reference points have scrolled off screen. We did, however, find ourselves wishing for more intelligence in the way Process Charter handles inserts. Rather than having to carefully draw a circle around a wide swath of objects to clear space for a new one, it would be nice to insert a figure and its associated lines and have the program move everything else down for you. It's the flowchart equivalent of the word processor's insert key, and it would save users the hassle of untangling lines and uncovering figures.
This is only a taste of Process Charter's flowcharting powers. There is a whole range of tools for changing colors, shading, typestyles, figure sizes, and so on.
The Smart Parts
The next step is to put some numbers behind the flowchart objects. For this, Process Charter offers a fairly clean input mechanism that does, however, come with a moderately steep learning curve. In a nutshell, you have to define resources (typically people and their pay rates) in the Resources spreadsheet, and then access the Activities dialog box to associate the resources to each action. When Process Charter runs through a simulation, it uses these definitions to quantify run times and costs. You also use the Activities box to establish the times (fixed or random within a range) that it takes to finish one task before going to the next one. Other variables in this box control such things as the size of the queue, routing choices, and timing flows through the system.
Click on the running-person icon, and up pop dialog boxes for setting up the simulation. Here, you choose the start and end times, as well as the seed value, which Process Charter assumes to be limited only by time unless y
ou name a number. You can then either run the simulation at the predetermined speed or step through it; Process Charter highlights each activity as it is being activated. Speed seems to bog down, as you might expect, as the number of activities per process rises. We were alarmed by a drastic slowdown on one test machine (a Tandy [AST] 486SX/33 with 4 MB of RAM--Scitor's minimum memory requirement) until we realized that our unlimited seed value was shoving articles through the process in gridlock-inducing volumes. You can also get into some trouble by monkeying with a variable that controls the real-time speed of each activity.
The light show pales in value to the copious reports that Process Charter creates post-simulation. As shown in the diagram
"The Bank Teller Queuing Problem"
, the Flow Model and Key Values spreadsheets are usually your best analysis tools. Flow Model tabulates the raw numbers of objects that flowed through the system and the average time spent on each a
ctivity. Key Values summarizes the important Flow Model data. Here's where you nail bottlenecks and spot inefficient uses of high-priced personnel.
There's Nothing Like It
Besides the few quibbles already cited, a few more bear mention. The manual, though nicely laid out, methodical, and comprehensive, is missing index entries for such key terms as "seed," and several toolbar items are ignored, though you can find the references by flipping through text. The on-line help is similarly spotty, and the manual-based tutorial is too short. On the other hand, Scitor throws in three simple-yet-informative sample processes as well as some on-line case studies.
Deeper study of simulation is probably necessary to get the full value of the program. Furthermore, accurately depicting business processes in the flowchart takes much thought, while assigning honest numbers to the spreadsheets is a potential pitfall. Still, process modeling and simulation is an undeniably powerful tool, a
nd Process Charter for Windows will likely do more than any previous program to make these disciplines accessible to non-specialists.
PRODUCT INFORMATION
Process Charter for Windows 1.0.........$595
Scitor Corp.
Menlo Park CA
(800) 549-9876
(415) 462-4200
fax: (415) 462-4201
E-mail:
info@scitor.com
illustration_link (112 Kbytes)
During the simulation run, Process Charter for Windows highlights the activities currently being performed (top). This run was stopped after the first two steps, and a Flow Objects spreadsheet generated (middle) to show the initial flow of objects through the activities (indicated by 1s). At the end of the simulation, totals and average times are calculated, then
summarized in the Key Values spreadsheet (bottom).
screen_link (88 Kbytes)
Scitor helped Boeing use Process Charter for Windows to determine that daily maintenance procedures would take 27 hours to complete unless some jobs were done in parallel. The flowchart and simulation were later used for training maintenance personnel.
David Essex is a technical editor for BYTE reviews. He can be reached on the Internet or BIX at
dessex@bix.com
.