ORMSwareTM Suite is a product of Ushar Enterprises Inc, Littleton, Colorado, USA

Objects in this document may appear out of sequence if not viewed with Internet Explorer

Product Overview Examples Home Hands-on tutorial and ORMSware downloads
ORMSware NMOD Primer

This primer, in combination with the Hands-on Tutorial, is for modeling practitioners as well as others interested in gaining deeper understanding of NMOD than would be possible by just going through the example models.

Non-practitioners (executives and functional experts who usually interface with modelers) may find that this document offers more than what they are interested in absorbing on their own. The nature of NMOD is such that non-practitioners may find it easiest to gain deeper understanding of it through interaction with practitioners.

NMOD's hierarchical logical network diagrams make it easy for non-practitioners to quickly gain a good understanding of what is being modeled. Then, as questions arise, they can look to practitioners for answers. This allows practitioners to provide targeted answers with explanations relevant to what is of most interest to non-practitioners at any given time.

This type of incremental learning reduces the burden on non-practitioners as well as the practitioners helping them. In the course of going through just one model, non-practitioners are likely to learn a great deal about NMOD without realizing how much they have learned.

This primer is written in a story telling fashion, taking the reader layer by layer deep into NMOD to reveal its building blocks, paradigm and strategies. If you stay with it, synchronizing your speed with the deliberate pace with which the twists and turns in the story are presented, you will be ready by the end of the primer for the hands-on NMOD tutorial presented at this site. The tutorial will teach you how to build models using NMOD.

Notes

1. In presenting this primer we start with a simple example that anyone in any industry with any functional background can understand, and then expand the example step by step, easing in various ORMSware notations and concepts. Please be sure to read all Notes, Cautions and Alerts in this document. We get into progressive amounts of detail from Chapter 3 thru Chapter 12. Chapter 13 is where you will start seeing how NMOD actually does what we discuss in chapters 2-13. It will be a good idea to go through Chapter 1 (Installing ORMSware's modeling environment), and Chapter 2 (Quick hands-on tour of NMOD modeling process) of Hands-on Tutorial as soon as you feel curious and comfortable enough to do so.

2. Some chapters in this document may look too technical if you just glance at their appearance without trying to understand them. But, if you actually read them while also looking at related diagrams, you will see that nothing here is all that difficult to comprehend. However, this is still a somewhat technical, albeit non-terse document. So, while we have tried to describe the concepts here in a story-telling fashion, reading this document cannot be as mindless as it could be in the case of a novel.

3. The core example and its derivatives used in this primer are artificial. For example, we talk quite a bit about modeling average costs (cost per piece, cost per hour, etc.). Anyone with a reasonable business education knows that decisions based on average costs rather than total costs and costs on the margin (incremental costs) are likely to produce poor results.

After the first few chapters if one feels lost and is compelled to ask "What is the benefit of all this?," chances are the individual is not ready for NMOD. NMOD's targets are practitioners who have had the breadth and depth of modeling experience to be able to easily relate topics presented in this Primer to challenges they have encountered in modeling various problems in the past.

If you shuttle between the primer and the hands-on tutorial, everything will begin to fall neatly into place. The final exercise we have chosen for the tutorial is step-by-step conversion of a spreadsheet model into a NMOD model. In fact, the model in that spreadsheet is a version of the model shown in the latter part of this primer. Just in case some readers are tempted to take a peek at Chapter 21 (Expressing spreadsheets in terms of logical networks) of this primer without going through its preceding chapters, we have tried to keep it as light as possible.

If you love modeling and have experience developing and implementing many large scale and complex models, chances are you will take a liking to NMOD very quickly.

We will start with a cursory review of modeling in Chapter 1 for the sake of non-practitioners who wish to go through this primer on their own.

1. Models and logical networks

  • Models
  • Logical networks

  • Figure 1

2. NMOD atom and ORMSware networks

  • NMOD atom
  • ORMSware Networks
  • Node display
  • Arc display
  • Arc Types (OR & AND)
  • Role property of nodes and arcs

  • Figure 1-Revised
  • Figure 2 thru 5

3. Notations of nodes and arcs

  • Nodes notation
  • Arcs notation

4. Visio pages and ORMSware networks

  • Network node
  • Start node
  • Return node

  • Figure 6

5. Execution of Network Type nodes

  • Figure 7

6. Calculation/execution threads

7. ORMSware entities

  • Customer, Token, Surrogate, and service analogy
  • Names of entities
  • Surrogate Count property of tokens
  • Convergence property of tokens

  • Figure 8
  • Figure 9

8. Arrival and Departure nodes

9. Creation, assignment and disposal of tokens and surrogates

  • Creation and disposal of tokens
  • Creation and disposal of surrogates

10. System, Global, and entity properties

  • System properties
  • Global properties
  • Customer Token properties
  • Surrogate properties

11. Notations of properties

  • Entity properties notation
  • Network object properties notation
    • Procedure properties
    • Scalar properties
  • Extending normal use of properties code
  • Scope of nops
  • Other network object properties

  • Figure 11a
  • Figure 11b

12. Working with Visio interface and NET file

  • Understanding details of a model
  • Expanding object content logic, and continuation of logic lines
  • Example of using NMOD's exposed functions and procedures
  • NMOD constants
  • Logical operators
  • Example of inserting debug statements
  • Network objects with default property/behavior
  • Network/page demarcation in NET file
  • Example of investigating property changes
  • Example of using Type property of a node to change model granularity
  • Selective execution of model components
  • Using CASE construct

13. Events, execution feedback, and model debugging

  • Events in NMOD
  • Model execution feedback and debugging

  • Figure 12

14. SignalTargets/temporal arcs property of network objects

  • Execution of SignalTarget relative to other network object properties

  • Execution of target objects of signals

  • Signal Duration property

  • Figure 13

15. AND-arc Multiplier property (an Arc flow vector element)

16. Using Microsoft Excel for inputs

  • How tables are automatically stored in NMOD
  • Loading tables from Excel files
  • Accessing individual elements of a table
  • Using reference values to look up a table element

  • Figures 14 and 15

17. User-defined scalars, arrays, derived types and procedures

  • User-defined variables at network object level
  • User-defined variables and procedures at model level
  • ADD file

18. Modules and global procedures that make up Model.EXE

  • DefNet Module

  • Client Module

  • PGM file

  • Optimization Module

  • Figure 16

  • Figure 17a

  • Figure 17b

  • Figures 18 and 19

19. Reinforcing concepts through PrimerSig's feedback file

  • Loading data from Excel tables
  • Temporal arcs (signals)
  • Duration of signal traversals
  • Conceptual clock
  • Adding to default merging logic at Convergence nodes
  • Results from PrimerSig model's execution in CurveBuild mode

  • Figure 13-Repeat
  • Figure 20

20. Reinforcing concepts through PrimerSubNet's feedback file

  • More about Excel tables (blank cells and notes in tables)
  • Creating customer arrivals at any node or arc (production example)
  • Creating customer departures at any node or arc
  • Duration properties of nodes and arcs (just-in-time example)
  • Dynamic and static aspects of a model
  • Network nodes, Return nodes and surrogate's network call stack
  • Uncertainty/risk modeling
  • MergeSum function
  • Monte Carlo simulation and planned variance reduction methods

  • Figure 21
  • Figure 22

21. Expressing spreadsheets in terms of logical networks

  • Similarity between spreadsheet and network models
  • Transforming spreadsheet into hierarchical logical network(s)
  • Nodes consolidation using logic instead of graphical grouping into subnets

  • Figure 23
  • Figure 24

Appendix A

  • System properties
  • Exposed NMOD procedures
  • NMOD constants