home *** CD-ROM | disk | FTP | other *** search
/ Simtel MSDOS - Coast to Coast / simteldosarchivecoasttocoast2.iso / flowchrt / atk18ibm.zip / TUTORIAL.TXT < prev   
Text File  |  1994-02-08  |  74KB  |  1,903 lines

  1.  
  2.  
  3.  
  4.  
  5.  
  6.  
  7.  
  8.  
  9.  
  10.  
  11.  
  12.  
  13.                          -----------------------------------
  14.                          / A N A L Y S T   T O O L   K I T /
  15.                          -----------------------------------
  16.                                          ||
  17.                                          ||
  18.                                          \/
  19.               ---------------------------------------------------------
  20.               / Copyright (C) Chinook Software Group 1986, 1988, 1991 /
  21.               /                 all rights reserved                   /
  22.               ---------------------------------------------------------
  23.                                          ||
  24.                                          ||
  25.                                          ||
  26.                                          \/
  27.                              ==========================
  28.                              / Chinook Software Group /
  29.                              / P.O. Box 24536         /
  30.                              / Denver, CO.      80224 /
  31.                              ==========================
  32.  
  33.  
  34.  
  35.  
  36.  
  37.  
  38.  
  39.  
  40.  
  41.  
  42.  
  43.  
  44.  
  45.  
  46.               ========================================================
  47.               / This tool suite  enables a user  to perform top-down /
  48.               / system  specification  using the Structured Analysis /
  49.               / Methodology  ( Data Flow Diagrams ).    Diagrams are /
  50.               / entered  and manipulated  graphically, but stored in /
  51.               / textual form for easy access by other tools. Support /
  52.               / is  provided  for  data  dictionary  generation  and /
  53.               / analysis, as well as for analysis of the DFDs.       /
  54.               ========================================================
  55.  
  56.  
  57.  
  58.  
  59.  
  60.  
  61.  
  62.  
  63.                                      - 1 -
  64.  
  65.  
  66.                              *** NOTICE: PLEASE READ ***
  67.  
  68.  
  69.           This document is the companion to the SHAREWARE CHINOOK Software
  70.  
  71.           ATK product.
  72.  
  73.           This software has no artificial limitations on functionality or
  74.           periodic reminder screens of any kind.  The CHINOOK SOFTWARE
  75.           GROUP address and registration fee request appear at the startup
  76.           of certain tools only.
  77.  
  78.           This document and the attendant software is provided as-is and
  79.           without warranty as to correctness or suitability for any
  80.           specific application. The CHINOOK SOFTWARE GROUP disclaims any
  81.           responsibility for the use or misuse of this software by any
  82.           individual or entity, for any purpose whatever.
  83.  
  84.           This disk, with this document on it, may be copied and
  85.           distributed in its entirety, freely, but may not be modified or
  86.           sold.
  87.  
  88.           If you find ATK instructive and useful, registering your copy
  89.           with us for $35 will go a long way toward allowing its authors to
  90.           continue its development. In return, you will be placed on our
  91.           mailing list to receive information about future releases and
  92.           other products.  In addition, you will be given special
  93.           consideration with regard to future releases of ATK, and will be
  94.           sent additional documentation including detailed file formats,
  95.           evaluation rules, and reference pages for all functions.
  96.  
  97.           The asking price of $35 represents more than an order of
  98.           magnitude price break when compared with similar products
  99.           currently available.  Your support is both needed and
  100.           appreciated.
  101.  
  102.           Please send your contribution to:
  103.                                  The Chinook Software Group
  104.                                  P.O. Box 24536
  105.                                  Denver, CO.  80224
  106.  
  107.  
  108.                                   TABLE OF CONTENTS
  109.  
  110.           Introduction............................................1
  111.                This Document......................................1
  112.                Tool Synopsis......................................2
  113.           Installation............................................4
  114.                Hardware Requirements..............................4
  115.                Supplied Software..................................5
  116.                Procedures.........................................6
  117.                     Floppy System.................................6
  118.                     Hard Disk Systems.............................6
  119.           The Graphic Editor (GED)................................8
  120.                Command Overview...................................8
  121.                Controlling GED....................................9
  122.                Basic Operation...................................10
  123.                     The Context Diagram..........................11
  124.                     Prompts and messages.........................11
  125.                     Description of a process.....................11
  126.                     The Cursor...................................12
  127.                Commands..........................................13
  128.                     Exiting GED..................................13
  129.                     Redrawing a DFD..............................13
  130.                     Deleting a DFD...............................13
  131.                     Aborting a DFD...............................13
  132.                     Saving a DFD.................................13
  133.                     Naming a DFD.................................13
  134.                     Printing a DFD...............................13
  135.                     Creating Objects.............................14
  136.                     Moving Objects...............................15
  137.                     Erasing Objects..............................15
  138.                     Naming Objects...............................15
  139.                Customizing GED...................................15
  140.           The Data Dictionary....................................17
  141.                Dictionary Syntax.................................17
  142.           Data Dictionary Builder (DDBUILD)......................20
  143.                Command Overview..................................20
  144.           Data Dictionary Evaluator (DDEVAL).....................21
  145.                Command Overview..................................21
  146.           The Analysis Tool (ANAL)...............................22
  147.                Command Overview..................................22
  148.           Report Generator.......................................24
  149.                Command Overview..................................24
  150.           Miscellaneous Tools....................................26
  151.                ATTACH............................................26
  152.                GEDPS.............................................26
  153.                PS................................................26
  154.                KB................................................27
  155.           Index..................................................28
  156.  
  157.  
  158.  
  159.  
  160.  
  161.  
  162.  
  163.  
  164.  
  165.  
  166.  
  167.                                      - 3 -
  168.  
  169.  
  170.                                                                Introduction
  171.  
  172.             Introduction
  173.  
  174.  
  175.             The Structured Analysis methodology allows a user to perform a
  176.             top-down specification of a system from a data viewpoint.  The
  177.             methodology is not limited to software development, but
  178.             functions well at the requirements and system design levels
  179.             also.  The resulting set of diagrams and the data dictionary
  180.             augments any documentation effort, and provides a concise,
  181.             clear picture which may be dynamically maintained along with
  182.             the system it describes.
  183.  
  184.             This Document
  185.  
  186.             This document is intended to acquaint those already
  187.             knowledgeable in the Structured Analysis methodology with the
  188.             ATK tool package and its use.
  189.  
  190.             For those unfamiliar with Structured Analysis techniques, Tom
  191.             DeMarco's Structured Analysis and System Specification* is
  192.  
  193.             strongly recommended.
  194.  
  195.             A rudimentary knowledge of IBM/PC operation is also assumed.
  196.             In particular, the reader is expected to know how to load his
  197.             or her mouse driver (if any), which port the printer is
  198.             attached to, the meaning of the DOS PATH variable, and the
  199.             desired arrangement of files on his or her hard disk (if any).
  200.  
  201.             This document provides basic functional information in a
  202.             tutorial format. Each tool in the set is described, and some
  203.             examples are provided to illustrate the most common usage. No
  204.             attempt is made to cover every option or variation possible.
  205.             It is hoped that a user will grasp the underlying principles
  206.             of operation quickly, and be able to produce useful work
  207.             before fully understanding every detail of every command.
  208.  
  209.             The document is not complete, but we believe it to contain as
  210.             much information as the average user will need.  If you
  211.             believe some information should be added to this tutorial to
  212.             make the toolset more useful, please let us know.
  213.  
  214.             Be sure to consult the README.TXT and UPDATE.DOC files to get
  215.             any changes or additions made late in the production cycle.
  216.  
  217.  
  218.  
  219.  
  220.  
  221.  
  222.  
  223.  
  224.  
  225.                                 
  226.             * Structured Analysis and System Specification, DeMarco, ISBN
  227.             0-13-854380, Yourdon Press (Prentice Hall), 1979.
  228.  
  229.             Analyst Tool Kit Shareware  - 1 -            Revision 012494
  230.  
  231.  
  232.           Introduction
  233.           Tool Synopsis
  234.  
  235.           The ATK is a collection of application software designed to
  236.           facilitate the development, analysis, and maintenance of a set
  237.           of DFDs (data flow diagrams) and their associated data
  238.           dictionary:
  239.  
  240.             + A GRAPHIC EDITOR, called GED, which allows DFDs to be
  241.              interactively entered and manipulated.  Unlike a generic
  242.              graphics package, GED is specifically designed to work
  243.              with standard DFD symbology and conventions. GED produces
  244.              an ASCII format file as output, which can be read (and
  245.              modified) by text editors as well as the other tools in
  246.              the package.
  247.  
  248.             + A DATA DICTIONARY builder, called DDBUILD, which can read
  249.              the output of the graphic editor and produce the skeleton
  250.              Data Dictionary.  The data dictionary is an ASCII
  251.              formatted file which can be read and modified by text
  252.              editors as well as the DFD EVALUATOR.
  253.  
  254.             + A DATA DICTIONARY EVALUATOR, called DDEVAL, which reads
  255.              the completed data dictionary, parses it for errors, and
  256.              produces an exception listing.
  257.  
  258.             + A DATA FLOW DIAGRAM EVALUATOR, called ANAL, which reads
  259.              the data flow diagram files and the data dictionary, and
  260.              reports on conformance to the Structured Analysis
  261.              methodology guidelines.
  262.  
  263.             + A REPORT GENERATOR, called RG, which formats the output of
  264.              the other tools.  It has knowledge files produced by ATK,
  265.              but may be used as general-purpose formatter.
  266.  
  267.             Other tools are also included:
  268.             + A PostScript GENERATOR, called GEDPS, which converts DFD
  269.              files into PostScript representations suitable for sending
  270.              to PostScript printers or layout tools.
  271.  
  272.             + A DFD REUSE HELPER, called ATTACH, which copies entire DFD
  273.              subtrees for backup or reuse on other designs.
  274.  
  275.  
  276.           This version of ATK was originally intended for classroom use
  277.           and provides an environment in which to study the Structured
  278.           Analysis method. It was discovered, however, to be practical
  279.           for a range of small design efforts, and is being offered as
  280.           SHAREWARE at a price to suit a market neglected by comparable
  281.           products.
  282.  
  283.  
  284.  
  285.  
  286.  
  287.  
  288.  
  289.  
  290.  
  291.           Analyst Tool Kit Shareware - 2 -             Revision 012494
  292.  
  293.  
  294.                                                                Introduction
  295.             The toolkit features:
  296.                + 8 levels of decomposition below the context diagram.
  297.  
  298.                + Data dictionary evaluation limited only by available
  299.                 memory.
  300.  
  301.                + Flat ASCII data file formats easily accessible to other
  302.                 tools.
  303.  
  304.                + PostScript output from DFDs, suitable for printing or
  305.                 incorporation as EPS documents in publishing systems like
  306.                 Ventura Publisher.
  307.  
  308.                + Full function on vanilla PC hardware configurations, with
  309.                 no mouse, math coprocessor, or expensive graphics cards
  310.                 required.
  311.  
  312.                + Full support for a mouse, if present, including mapping
  313.                 mouse presses to any desired function.
  314.  
  315.  
  316.  
  317.  
  318.  
  319.  
  320.  
  321.  
  322.  
  323.  
  324.  
  325.  
  326.  
  327.  
  328.  
  329.  
  330.  
  331.  
  332.  
  333.  
  334.  
  335.  
  336.  
  337.  
  338.  
  339.  
  340.  
  341.  
  342.  
  343.  
  344.  
  345.  
  346.  
  347.  
  348.  
  349.  
  350.  
  351.  
  352.  
  353.             Analyst Tool Kit Shareware  - 3 -            Revision 012494
  354.  
  355.  
  356.           Installation
  357.           Installation
  358.  
  359.  
  360.  
  361.           Hardware Requirements
  362.  
  363.           The toolset primarily targets an IBM PC computer with:
  364.             + a minimum of 256K of main memory
  365.  
  366.             + a standard IBM color graphics adapter (CGA, EGA, VGA)*
  367.  
  368.             + a printer capable of doing graphic output (optional, if
  369.              hardcopy not necessary)**
  370.  
  371.             + two 360K floppy drives, or one floppy and a hard drive.
  372.  
  373.             + DOS version 2.0 or higher (DOS 3.0 or higher is helpful)
  374.  
  375.           The product will run on most all IBM PC compatibles with an
  376.           appropriate graphics card.
  377.  
  378.           The product will run on an IBM PC/AT with an appropriate
  379.           graphics card.
  380.  
  381.           The product will run on an IBM PS2 with an appropriate
  382.           graphics card.
  383.  
  384.           The product will generate conforming PostScript output for
  385.           DFDs.
  386.  
  387.           The product does not require a mouse, but will support one if
  388.           present*** .
  389.  
  390.           The product does not require nor use a math coprocessor.
  391.  
  392.           The product can be evaluated with a single low-density floppy,
  393.           albeit with some annoyance.
  394.  
  395.  
  396.  
  397.  
  398.  
  399.                               
  400.           * For Hercules cards, Microsoft requires that the program
  401.           MSHERC.COM be run before the card is recognized.  No other
  402.           special action need be taken to use Hercules cards.
  403.  
  404.           ** Graphic output can be supported with the standard PrtSc
  405.           function support (if a compatible printer is provided), Epson
  406.           9-pin printers in any supported graphics mode, HP Laserjet-
  407.           type printers, or Postscript.  More support is on the way.
  408.  
  409.           *** As a note to mouse users, many older mouse drivers did not
  410.           understand and support EGA and VGA graphics modes.  If loading
  411.           your mouse driver and then running GED does not result in a
  412.           visible mouse cursor, you should contact your mouse vendor for
  413.           an updated driver.
  414.  
  415.           Analyst Tool Kit Shareware - 4 -             Revision 012494
  416.  
  417.  
  418.                                                                Installation
  419.             Supplied Software
  420.  
  421.             The product is shipped on a single floppy disk containing the
  422.             appropriate versions of the tool executables, a printable
  423.             version of this manual, and some example material.
  424.  
  425.             At least the following files will be present on your
  426.             distribution disk:
  427.                + README.TXT     A printable file containing errata,
  428.                     additions, or other noteworthy material.
  429.  
  430.                + GED.EXE        The Graphics Editor program.
  431.  
  432.                + DDBUILD.EXE   The Data Dictionary builder/updater
  433.                     program.
  434.  
  435.                + DDEVAL.EXE    The Data Dictionary evaluator program.
  436.  
  437.                + ANAL.EXE      The Data Flow Diagram Analyzer program.
  438.  
  439.                + CONFIG.ANA    A sample configuration file for the
  440.                     analysis tool.  This file is optional, and is
  441.                     consulted by ANAL if available.
  442.  
  443.                + CONFIG.GED    A sample configuration file for the
  444.                     graphics editor.  This file is optional, and is
  445.                     consulted by GED if available.
  446.  
  447.                + GEDPS.EXE     The Postscript generator.
  448.  
  449.                + GEDPS.PS      The Postscript dictionary for the
  450.                     Postscript generator.  This file is required, and is
  451.                     consulted by GEDPS.
  452.  
  453.                + CONFIG.GPS    A sample configuration file for the
  454.                     Postscript generator.  This file is optional, and is
  455.                     consulted by GEDPS if available.
  456.  
  457.                + RG.EXE        The page formatting utility.
  458.  
  459.                + CONFIG.RG     A sample configuration file for the report
  460.                     generator.  This file is optional, and is consulted by
  461.                     RG if available.
  462.  
  463.                + DOC <DIR>     A subdirectory containing application
  464.                     notes.
  465.  
  466.                + SAMPLES1 <DIR>A subdirectory containing some pre-written
  467.                     DFDs for practice use, and an example of a data
  468.                     dictionary.
  469.  
  470.                + *.TXT         Any other required up-to-date information
  471.  
  472.  
  473.  
  474.  
  475.  
  476.  
  477.             Analyst Tool Kit Shareware  - 5 -            Revision 012494
  478.  
  479.  
  480.           Installation
  481.           Procedures
  482.  
  483.                    BEFORE YOU DO ANYTHING ELSE WITH THIS DISK,
  484.  
  485.                                MAKE A BACKUP COPY!
  486.  
  487.  
  488.           Use the diskcopy command as described in your operating system
  489.           manual to make a copy of the disk.  Put the original disk in a
  490.           safe place and use the copy for the remainder of your work.
  491.  
  492.           Floppy System
  493.  
  494.           If you are using a dual floppy system the easiest way to use
  495.           the toolset is to put the tool executables in drive A: and a
  496.           disk to contain your work in drive B:.  The sample material
  497.           from the supplied disk may be copied to the B: drive for
  498.           modification, if desired.
  499.  
  500.           Make a system disk using the command FORMAT B:/S with your
  501.           regular system disk in drive A, and a NEW disk in drive B.
  502.           Copy all the *.EXE files from your distribution disk (Disk #1)
  503.           to the new system disk by placing the distribution disk in
  504.           drive A, and using the command XCOPY A:*.EXE B: /V.
  505.  
  506.           You can now use ATK by booting off of the new ATK system disk,
  507.           and placing the working disk in drive B:.  You should make the
  508.           B: drive the default drive, and the directory holding your DFD
  509.           files the current directory.  (The files CONFIG.RG,
  510.           CONFIG.ANA, and CONFIG.GED should either be here or on drive
  511.           A: if you intend to use them.)
  512.  
  513.           The A:\ drive should be included in your PATH, so the
  514.           operating system can find the tools.  PATH with no arguments
  515.           will display the current path setting.  The path is usually
  516.           set by the AUTOEXEC.BAT file when the machine is first booted.
  517.  
  518.           You can install the tools on a single floppy if desired.  Your
  519.           projects will be very limited if this is not at least a 720K
  520.           drive.
  521.  
  522.           Hard Disk Systems
  523.  
  524.           Hard disk installations vary with individual user preference.
  525.           Keep the following points in mind for your hard disk
  526.           installation.
  527.  
  528.             + The tools are standard executables and use no overlays;
  529.              the tools may reside together or separately, and are
  530.              subject to the same rules which your operating system uses
  531.              to locate any type .EXE file (e.g., PATH).
  532.  
  533.             + The DFDs being worked on are, by default, in the current
  534.              directory. This means that each set of DFDs (each project)
  535.              must reside in a separate directory.
  536.  
  537.  
  538.  
  539.           Analyst Tool Kit Shareware - 6 -             Revision 012494
  540.  
  541.  
  542.                                                                Installation
  543.                + The files CONFIG.GED, CONFIG.ANA, and CONFIG.RG must
  544.                 reside in the current directory, in the directory pointed
  545.                 to by environment variable "ATK", or in the directory
  546.                 containing the GED.EXE, ANAL.EXE, RG.EXE (DOS 3.0 and
  547.                 above). Each set of DFDs (each project), may have its own
  548.                 set of setup files.
  549.  
  550.             One easy way to install ATK on a hard disk is as follows:
  551.  
  552.                1) Select a directory to install ATK in.  Assume for now it
  553.                 is C:\ATK.
  554.  
  555.                2) Change directories to the directory to install into.
  556.  
  557.                3) Place the ATK disk in your floppy drive.  Assume for now
  558.                 it is drive A:
  559.  
  560.                4) Issue the DOS command:  XCOPY A:*.* . /S /V
  561.                 This will copy all the files and save the subdirectory
  562.                 structure.
  563.  
  564.                5) If you have a second ATK installation disk, place it in
  565.                 the floppy drive and repeat step 4.
  566.  
  567.                6) Edit your AUTOEXEC.BAT file.  This will normally be
  568.                 C:\AUTOEXEC.BAT.
  569.  
  570.                  a) Add a line:  SET ATK=C:\ATK
  571.  
  572.                  b) Modify the line that begins with PATH or SET PATH.  Add
  573.                 the following to the end of the line:  ;C:\ATK
  574.  
  575.                  c) Save and exit.
  576.  
  577.  
  578.             The next time you reboot, you will have the GED tools
  579.             available from anywhere on your disk, and the system
  580.             configuration files for GED will be found (and can be
  581.             modified) in C:\ATK.
  582.  
  583.  
  584.  
  585.  
  586.  
  587.  
  588.  
  589.  
  590.  
  591.  
  592.  
  593.  
  594.  
  595.  
  596.  
  597.  
  598.  
  599.  
  600.  
  601.             Analyst Tool Kit Shareware  - 7 -            Revision 012494
  602.  
  603.  
  604.           The Graphic Editor (GED)
  605.           The Graphic Editor (GED)
  606.  
  607.  
  608.           The graphic editor, called GED, is the means by which graphic
  609.           representations of DFDs are entered, viewed, and manipulated.
  610.           The output of GED is a graphic rendition of the DFD on a CRT
  611.           or graphic printer, and an ASCII file containing a formatted
  612.           description of the DFD which the analysis tools can read. The
  613.           DFD file may be created or manipulated with any text editor
  614.           which doesn't put extraneous characters into the file. This
  615.           would normally only be done in environments which can't
  616.           support GED. (i.e. no graphics card)
  617.  
  618.           Command Overview
  619.  
  620.           The simplest invocation is to type GED at the system prompt.
  621.           This would cause GED to consult the file CONFIG.GED in the
  622.           current directory, if such a file exists, and to call the
  623.           context diagram to the screen, if it exists.  If no context
  624.           diagram exists in the current directory, GED will provide a
  625.           screen for its creation.  This would be the proper beginning
  626.           of a new project.
  627.  
  628.           GED, like the other tools in ATK, has a configuration file to
  629.           contain all the frequently used options; once set in the
  630.           configuration file, the tool can just be run with the command
  631.           line GED.  However, command line options are also available
  632.           for overriding items in the configuration file.
  633.  
  634.           The full command line syntax for GED is as follows:
  635.  
  636.                GED [-flags] [initial-diagram-number]
  637.  
  638.           where brackets [] indicate optional specifications
  639.  
  640.           Some flags are:
  641.             -q    loads diagrams "quietly", that is, without detailed
  642.                   error reporting.
  643.  
  644.             -Eeditor
  645.                   uses 'editor' as the minispec editor instead of EDLIN
  646.  
  647.             -ppath
  648.                   uses 'path' as the project directory instead of the
  649.                   current directory, if it exists.
  650.  
  651.             -m6   will set the graphics mode to mode 6 (B&W-600x200).
  652.                   This is useful if a user has an EGA or VGA card, but
  653.                   the only screen capture utility available only works
  654.                   in CGA mode.
  655.  
  656.                   If the user has a VGA card, but wishes to capture a
  657.                   monochrome drawing (such as in WordPerfect), -m17 (B&W
  658.                   640x480) would be the appropriate flag.
  659.  
  660.                   NOTE THAT EPSON AND HP PRINTERS ARE SUPPORTED DIRECTLY
  661.  
  662.  
  663.           Analyst Tool Kit Shareware - 8 -             Revision 012494
  664.  
  665.  
  666.                                                    The Graphic Editor (GED)
  667.                     BY GED; the -m flag should not be necessary if you
  668.                     have an Epson or HP-compatible printer.
  669.  
  670.  
  671.             The initial-diagram-number is specified in standard DFD dot
  672.             notation.
  673.                Example:        0.2.3
  674.  
  675.             is the diagram describing the third process in the diagram
  676.             describing the second process in the diagram below context.
  677.  
  678.             Remember that if no diagram number is given, the context
  679.             diagram will be called or created.  The context diagram has
  680.             the special number -1, and the diagram describing the context
  681.             process is 0.
  682.                Example:        GED -q -pB:\MYPROJECT\ 0.2.5
  683.  
  684.             will invoke GED, and silently load DFD number 0.2.5 from the
  685.             directory B:\MYPROJECT\.
  686.  
  687.             Controlling GED
  688.  
  689.             The majority of commands within GED are given using the
  690.             function keys located to the left of the main keyboard (on an
  691.             IBM PC). The default mapping of GED commands to these keys is
  692.             shown below.  The file CONFIG.GED provides for remapping most
  693.             of the keys, should our choices not be yours.  A complete list
  694.             can be found in GEDCONFIG.DOC.
  695.  
  696.             In the list below, <shft> means to hold the shift key down
  697.             before pressing the indicated function key, while <alt> means
  698.             to do the same with the alt key.
  699.  
  700.                  <F1>  create process      <shft><F1>  visit DFD
  701.                  <F2>  name object         <shft><F2>  name DFD
  702.                  <F3>  create external     <shft><F3>  create text
  703.                  <F4>  move object         <shft><F4>  unassigned
  704.                  <F5>  create store        <shft><F5>  double
  705.                  <F6>  save DFD            <shft><F6>  abort DFD
  706.                  <F7>  create flow         <shft><F7>  route
  707.                  <F8>  redraw DFD          <shft><F8>  exit GED
  708.                  <F9>  visit child         <shft><F9>  visit parent
  709.                  <F10> delete object       <shft><F10> delete DFD
  710.  
  711.             Most operations can also be done by holding down the Alt key
  712.             and typing the mnemonic for the action.  For example, a
  713.             process can be created with Alt-P.
  714.  
  715.                <esc>the escape key is used to cancel a partially completed
  716.                     operation.
  717.  
  718.  
  719.  
  720.  
  721.  
  722.  
  723.  
  724.  
  725.             Analyst Tool Kit Shareware  - 9 -            Revision 012494
  726.  
  727.  
  728.           The Graphic Editor (GED)
  729.             <^P>  produces hardcopy of current DFD. You must have a
  730.                   printer capable of graphic rendition installed, and
  731.                   you have properly configured the printer driver.*
  732.  
  733.             <^A>  calls the analysis tool (ANAL) from within GED. Only
  734.                   the current diagram is analyzed.
  735.  
  736.             <^S>  performs a system escape. A DOS prompt appears and any
  737.                   DOS operation may be performed within the limits of
  738.                   available memory. The DOS command EXIT will return you
  739.                   to the graphic editor.
  740.  
  741.             <<>   (less than key) will increase the size of the current
  742.                   object.
  743.  
  744.             <>>   (greater than key) will decrease the size of the
  745.                   current object.
  746.  
  747.             A-F9  (The F9 key pressed with the Alt key) will visit (or
  748.                   create) the minispec of the current process by
  749.                   invoking a text editor.
  750.  
  751.             Ins   The insert key will bring up a menu of objects that
  752.                   can be created.
  753.  
  754.             Del   The delete key will delete the current object (after
  755.                   confirmation).
  756.  
  757.             C-PgUp  (The PgUp key pressed with the Control key) will
  758.                   visit the parent of the current DFD
  759.  
  760.             C-PgDn  (The PgDn key pressed with the Control key) will
  761.                   visit the child of the current process.
  762.  
  763.           Finally, GED can also be controlled using an optional mouse.
  764.           Each mouse button can have an assigned action; for commands
  765.           like Move and Create Flow, the mouse buttons get temporary new
  766.           assignments.  The default mouse actions are Visit Parent for
  767.           the left button, Visit Child for the right button, and Move
  768.           for the middle button (if any).  Mouse buttons also have
  769.           context-sensitive meanings.  For instance, pressing the left
  770.           button after starting a Flow identifies the endpoint, while
  771.           the right button identifies a route point.  Prompts requiring
  772.           yes or no answers can be answered Yes by pressing the left
  773.           button, and No by pressing the right button.
  774.  
  775.           Basic Operation
  776.  
  777.           Basic graphic concepts and operations for constructing and
  778.           manipulating DFDs are summarized below. The manual provided to
  779.  
  780.                               
  781.           * For example, with an IBM PC, an IBM printer, and a CGA card,
  782.           you must run GRAPHICS before invoking GED.  If PostScript
  783.           output is desired, GEDPS may be run after the GED session is
  784.           completed.  Epson 9-pin and HP printer compatibles are
  785.           supported in any graphics mode, through CONFIG.GED.
  786.  
  787.           Analyst Tool Kit Shareware - 10 -            Revision 012494
  788.  
  789.  
  790.                                                    The Graphic Editor (GED)
  791.             registered users contains a more complete description of each
  792.             of the commands available.
  793.  
  794.             The Context Diagram
  795.  
  796.             DFDs are organized in the familiar inverted tree structure.
  797.             The root node of every DFD tree is called the context diagram.
  798.             If GED is called with no DFD number specified, the context
  799.             diagram will be called. If the context diagram does not exist,
  800.             it will be created.
  801.  
  802.             The context diagram, numbered -1, has only one process
  803.             intended to show the scope of the project at hand. The process
  804.             number is 0. (GED will draw this process for you in the
  805.             context diagram, however, lower-level diagrams will contain
  806.             nothing but text when they are first created.)
  807.  
  808.             The name of the context diagram is "CONTEXT" and cannot be
  809.             changed.*
  810.  
  811.             To try this on a real diagram, try the command line
  812.                  GED -p sample1
  813.             from your installed ATK directory (Use Alt-X to exit when you
  814.             wish).  See Exercise 1 for step-by-step details.
  815.  
  816.             Prompts and messages
  817.  
  818.             GED will prompt the user for information and confirmation in a
  819.             number of circumstances.  GED will also supply informational
  820.             messages as appropriate times.  These messages will always
  821.             appear on the last two lines of the screen.  User-entered
  822.             input will always appear on the last line of the screen.
  823.             User-entered input is always terminated by the <Enter> key,
  824.             and is always cancelled through the <Esc> key.  Any "yes" or
  825.             "no" response can be answered with a y or n.  The default is
  826.             "yes".
  827.  
  828.             To see a sample message, press the <shft><F9> key.  You should
  829.             get the message Diagram has no parent., since the context
  830.             diagram is always the root of the DFD tree. See Exercise 2 for
  831.             step-by-step instructions.
  832.  
  833.             Description of a process
  834.  
  835.             The description of process 0 in the context diagram is DFD 0.
  836.  
  837.             A DFD inherits its number and name from the number and name of
  838.             the process it decomposes.
  839.  
  840.  
  841.  
  842.                                 
  843.             * GED is very configurable; a number of absolutes, such as
  844.             this one, can be modified or overridden via the configuration
  845.             file.  The usage described in the tutorial is the usual usage.
  846.             Please consult the section on Customizing GED, and the .DOC
  847.             and .TXT files for details on these other uses.
  848.  
  849.             Analyst Tool Kit Shareware - 11 -            Revision 012494
  850.  
  851.  
  852.           The Graphic Editor (GED)
  853.           The names of DFDs below context are user selectable, however
  854.           the analysis tool (ANAL) will complain if the name of a DFD
  855.           does not match the name of the process it decomposes.
  856.  
  857.           A DFD must have at least one process, and should have no more
  858.           than 8 (up to 50 are supported, however).
  859.  
  860.           DFDs in the tree are visited by using the 'visit child' (F9),
  861.           'visit parent' (Shift-F9), or 'visit DFD' (Shift-F1) keys. If
  862.           the visited DFD does not exist, it will be created.
  863.  
  864.           If you press the 'visit child' key while the cursor is not
  865.           near any process, you will get the message No process found at
  866.           current location.
  867.  
  868.           If you press the 'visit child' key while the cursor is in
  869.           process 0 at the center of diagram -1; you will see diagram 0
  870.           become visible.
  871.  
  872.           If a process is so well-defined that it can be described
  873.           textually rather than being decomposed, use the 'visit
  874.           minispec' key (Alt-F9) to edit the text description.  If the
  875.           minispec does not exist, it will be created.  If you decide to
  876.           decompose the process later, GED will prompt you to delete the
  877.           minispec.
  878.  
  879.           The Cursor
  880.  
  881.           When a DFD is on the screen, a graphic cursor will be visible.
  882.           This cursor is used to point to graphic objects to be placed,
  883.           erased, moved, named, or otherwise manipulated.
  884.  
  885.           The cursor is controlled by either the mouse or the cursor pad
  886.           keys on the right side of the keyboard of an IBM-PC or
  887.           compatible. On machines with separate cursor and numeric pads,
  888.           the cursor control can be switched to the numeric pad by
  889.           turning off the Num Lock key.
  890.  
  891.           There are two cursor speeds.  The numeric keypad/cursor keys
  892.           will provide coarse motion in any of the 8 directions.  A
  893.           'fine' cursor is available as well.  The fine cursor will move
  894.           left, right, up, and down via the 'H', 'L', 'K', and 'J' keys
  895.           respectively.  The 'C' key will always jump to the center of
  896.           the screen.
  897.  
  898.           For an object on the screen to be selected, the cursor should
  899.           be somewhere inside its perimeter (for closed objects), or
  900.           very near the object (in the case of flows, flow splitters,
  901.           and boundary points.
  902.  
  903.           For practice, press the Flow key (F7) while the cursor is over
  904.           a process.  Note that the message line now shows that you are
  905.           trying to create a new flow from the selected process.  Press
  906.           the Cancel key (Esc) to cancel the operation.  Exercise 2
  907.           covers this material.
  908.  
  909.  
  910.  
  911.           Analyst Tool Kit Shareware - 12 -            Revision 012494
  912.  
  913.  
  914.                                                    The Graphic Editor (GED)
  915.             Commands
  916.  
  917.             The following sections summarize some of the main commands of
  918.             GED.  A full list of these commands can be found in
  919.             ACTIONS.DOC.
  920.  
  921.             Exiting GED
  922.  
  923.             Pressing the 'exit GED' key (Alt-X) will prompt the user for
  924.             saving changes and/or confirmation for exiting GED.  If the
  925.             user OKs exiting, GED returnes control to DOS.
  926.  
  927.             Redrawing a DFD
  928.  
  929.             A DFD may be re-drawn by pressing the 'redraw DFD' key (F8).
  930.             This key is useful in eliminating occasional artifacts
  931.             produced as a result of drawing and moving objects.
  932.  
  933.             You can get a feel for the speed of this operation by pressing
  934.             F8 while a diagram is visible.
  935.  
  936.             Deleting a DFD
  937.  
  938.             A DFD may be deleted (removed from the disk) by pressing the
  939.             'delete DFD' key (Shift-F10) when the DFD is being displayed.
  940.             In deleting a DFD, all children and minispecs of that DFD will
  941.             be deleted as well.
  942.  
  943.             To experiment with this, please create a diagram or set of
  944.             diagrams you are willing to lose first.
  945.  
  946.             Aborting a DFD
  947.  
  948.             Pressing the 'abort DFD' key (Shift-F6) will discard all work
  949.             done since the last time the DFD was saved. The DFD is re-read
  950.             from disk and displayed.
  951.  
  952.             Saving a DFD
  953.  
  954.             Pressing the 'save DFD' key (F6) will cause the DFD as
  955.             currently displayed to be written to disk.  A new DFD is not
  956.             persistent until it is saved.
  957.  
  958.             Naming a DFD
  959.  
  960.             Pressing the 'name DFD' key (Shift-F2) will allow for naming
  961.             or re-naming the current DFD, except for the context diagram.
  962.             Use this cautiously, since this name must agree with the name
  963.             of the process it is decomposing in the parent diagram!
  964.  
  965.             Printing a DFD
  966.  
  967.             Pressing the 'Print DFD'  key (Control-P) will redraw the
  968.             screen, erase the cursor, and invoke the print sequence.
  969.             NOTE: the shift-Print Screen key on your keyboard will NOT
  970.             invoke GED's print functions; it will invoke your computer's
  971.             print screen function.
  972.  
  973.             Analyst Tool Kit Shareware - 13 -            Revision 012494
  974.  
  975.  
  976.           The Graphic Editor (GED)
  977.  
  978.           In some ways, printing a DFD is the trickiest part of GED.
  979.           Details and hints can be found in PRINTING.DOC.
  980.  
  981.           There are 3 lines in the configuration file CONFIG.GED that
  982.           control printing:  the lines PRINTER TYPE, PRINTER PORT, and
  983.           PRINTER MODE.  As delivered, GED expects the user to have a
  984.           Print Screen TSR loaded and properly configured.
  985.           If you have an Epson printer on parallel port 1, you will want
  986.           these 3 lines to be:
  987.                PRINTER TYPE=Epson
  988.                PRINTER PORT=LPT1:
  989.                PRINTER MODE=-2
  990.           If you have an HP laserjet, you will want the first line to
  991.           read
  992.                PRINTER TYPE=HP
  993.           and the others can stay the same.
  994.           If you have a PostScript printer, see the section on GEDPS.
  995.  
  996.           Creating Objects
  997.  
  998.           In general, objects are created by moving the cursor to the
  999.           desired screen location of the object, and pressing the
  1000.           appropriate 'create' key (F1, F3, F5, F7), or by selecting
  1001.           from the menu-like selection of the 'create-any' key (Ins).
  1002.           This holds true for processes, externals, and stores. An
  1003.           opportunity to name the created object will be provided.
  1004.           Names should be alphanumerics, space, dash, and underscore
  1005.           characters.
  1006.  
  1007.           Boundary points are automatically created at the end of flows
  1008.           which don't terminate on any other known object. Boundary
  1009.           points are not named.
  1010.  
  1011.           Flows are created by positioning the cursor on the object at
  1012.           which the flow will originate, pressing 'create flow' (F7),
  1013.           moving the cursor to the object where the flow will terminate,
  1014.           and pressing 'create flow' again.  GED will prompt for a flow
  1015.           name; if the flow did not terminate where you desired, the
  1016.           Cancel key (escape) will allow you to start again.
  1017.  
  1018.           The direction of the flow can be altered with the 'double' key
  1019.           (Shift-F5) after the flow is created.
  1020.  
  1021.           If one end of a flow rests on another flow, a flow splitter
  1022.           will be created with no arrow at the junction. Flow splitters
  1023.           are not named*.
  1024.  
  1025.           Flows may be maneuvered around other objects by creating route
  1026.           points on them.  Route points can be added while creating a
  1027.           flow using the 'route' key (Shift-F7).  If you add an unwanted
  1028.           route point, you can cancel it by pressing the escape key.
  1029.           You may then continue with the flow.  Route points may also be
  1030.           added and deleted later.
  1031.  
  1032.                               
  1033.           * Flow splitters are implemented as route points in ATK.
  1034.  
  1035.           Analyst Tool Kit Shareware - 14 -            Revision 012494
  1036.  
  1037.  
  1038.                                                    The Graphic Editor (GED)
  1039.             Stores come in single line and double line varieties. The
  1040.             'create store' key initially draws a double line store. The
  1041.             'double' key (Shift-F5) may then be used to toggle between the
  1042.             three representations (the single line may appear either above
  1043.             or below the store).
  1044.  
  1045.             Descriptions are a single line of arbitrary text which can be
  1046.             placed anywhere on the diagram by pressing the 'description'
  1047.             key (").  Descriptions are not analyzed in the diagram, so
  1048.             their contents do not conform to other objects' naming
  1049.             conventions.
  1050.  
  1051.             Moving Objects
  1052.  
  1053.             An object may be moved by selecting the object with the cursor
  1054.             and pressing 'move object' (F4). The selected object will
  1055.             disappear, and the cursor will change to an icon of the moved
  1056.             object. The user then moves the cursor to the desired location
  1057.             for the object, and 'move object' pressed again.
  1058.  
  1059.             The operation is so designed that hitting the 'move object'
  1060.             key twice without moving the cursor will cause no change in
  1061.             the object's position.
  1062.  
  1063.             Flows may not be moved directly. They are automatically moved
  1064.             when objects they are connected to are moved.  A flow name may
  1065.             be moved to any point on the diagram; the position is relative
  1066.             to the two endpoints of the flow.  If 'move object' (F4) is
  1067.             pressed while the cursor is on a flow line a route point
  1068.             object is created and can be moved.  The flow line passes
  1069.             through each of its route points before terminating.
  1070.  
  1071.             Erasing Objects
  1072.  
  1073.             When 'delete object' (F10) is pressed with the cursor
  1074.             selecting some object, the object will be deleted.  Deletion
  1075.             will prompt for confirmation, unless the user has configured
  1076.             GED otherwise.
  1077.  
  1078.             Naming Objects
  1079.  
  1080.             Pressing the 'name' key (F2) allows for the naming or re-
  1081.             naming of an object.  When renaming an object, the usual DOS
  1082.             command-line editing capabilities are available:  F1 or right
  1083.             arrow copies one character from the old name, delete removes
  1084.             one, and F3 copies the remainder of the old name.
  1085.  
  1086.             Customizing GED
  1087.  
  1088.             GED can be customized by entering configuration lines in the
  1089.             CONFIG.GED file.  A few of these lines are described below.  A
  1090.             complete set can be found in the ATK reference manual; a
  1091.             summary can be found in GEDCONFIG.DOC.
  1092.  
  1093.                ERROR=X  Sets the error file to be the file X.  This setting
  1094.                     is recommended (e.g., ERROR=GED.ERR).  Otherwise,
  1095.  
  1096.  
  1097.             Analyst Tool Kit Shareware - 15 -            Revision 012494
  1098.  
  1099.  
  1100.           The Graphic Editor (GED)
  1101.                   errors print to the screen (where they are quickly
  1102.                   erased).
  1103.  
  1104.             MODE=n  Sets the graphics mode to the given number.  For the
  1105.                   IBM PC, examples are 6=B&W 640x200; 16=Color 640x350
  1106.                   EGA; 17=B&W 640x480 VGA; 18=Color 640x480 VGA.
  1107.  
  1108.             PROCESS COLOR=n  Sets the color of processes to the color
  1109.                   index given.  These indices are mode- and palette-
  1110.                   dependent.  (Similarly for EXTERNAL, STORE, FLOW,
  1111.                   TEXT)
  1112.  
  1113.             PRINTER TYPE=X  Sets the type of printer to either Epson
  1114.                   (the default) or HP.  The printer mode depends on this
  1115.                   type.
  1116.  
  1117.             PRINTER PORT=X  Sets the printer port to the given name.
  1118.                   Default is LPT1.  The whole name, such as LPT1, must
  1119.                   be used.  The port can be directed to a file.
  1120.  
  1121.             PRINTER MODE=n  Sets the printer mode
  1122.                   For all drivers, the following modes are supported
  1123.                   -2        Use current driver, preassigned modes
  1124.                   -1        Use INT5 support (default if mode
  1125.                   unspecified)
  1126.  
  1127.                   For Epson 9-pin and compatibles, supported modes are
  1128.                   0         60 DPI
  1129.                   1         120 DPI
  1130.                   2         High speed 120 DPI (assigned modes 6,17,18)
  1131.                   3         240 DPI
  1132.                   4         80 DPI
  1133.                   5         72 DPI
  1134.                   6         90 DPI (assigned for other modes)
  1135.  
  1136.                   For the HP Laserjet and compatibles, supported modes
  1137.                   (and aspect ratios) are
  1138.                   0         75 DPI, 1-1 (default most video modes)
  1139.                   1         100 DPI, 1-1
  1140.                   2         150 DPI, 1-1
  1141.                   3         300 DPI, 1-1
  1142.                   4         75 DPI, 1-2 (default mode 6)
  1143.                   5         100 DPI, 1-2
  1144.                   6         150 DPI, 1-2
  1145.                   7         300 DPI, 1-2
  1146.                   8         150 DPI, 2-3 (default modes 15,16,
  1147.                   Hercules)
  1148.                   9         300 DPI, 3-4 (best for EGA, but big--336K)
  1149.  
  1150.             EDITOR=X  Sets the default editor for minispecs to path X.
  1151.  
  1152.             NOMOUSE  Turns off mouse support, even if a mouse driver is
  1153.                   loaded.  Useful if running GED from an external
  1154.                   application that wishes to retain control of the
  1155.                   mouse.
  1156.  
  1157.  
  1158.  
  1159.           Analyst Tool Kit Shareware - 16 -            Revision 012494
  1160.  
  1161.  
  1162.                                                         The Data Dictionary
  1163.             The Data Dictionary
  1164.  
  1165.  
  1166.             Flows and stores in a DFD are potentially decomposed into a
  1167.             series of more detailed flows and stores in the DFDs child.
  1168.             For instance, a flow named user-requests in a particular DFD
  1169.             would probably decompose into several flows in the child.
  1170.  
  1171.             The graphic representation of a DFD does not show the
  1172.             relationship between a flow and its decomposition. The Data
  1173.             Dictionary is an ASCII document specifying this and other
  1174.             relational information, and goes hand in hand with the set of
  1175.             data flows.
  1176.  
  1177.             Dictionary Syntax
  1178.  
  1179.             The Data Dictionary is an ASCII file, and consists of a list
  1180.             of sentences, each terminating with a period.
  1181.  
  1182.             A sentence consists of a left hand side followed by an equal
  1183.             sign followed by a right hand side.
  1184.  
  1185.             The left hand side consists of the name of the thing being
  1186.             described, such as the name of a flow or store.
  1187.  
  1188.             The right hand side consists of one of the following:
  1189.  
  1190.                + the term TBD meaning "To Be Defined".  This is a place
  1191.                 holder, indicating that a proper description will be
  1192.                 supplied later.
  1193.  
  1194.                + the word PRIMITIVE, which defines an axiomatic entity not
  1195.                 to be decomposed further.
  1196.  
  1197.                + a symbolic description of the item in terms of its
  1198.                 component items. This description will include one or more
  1199.                 other item names, and may use certain symbols to indicate
  1200.                 sequences, repetition, choice, or optional components.
  1201.  
  1202.             The exact syntax of legal data dictionary statements is
  1203.             supplied in the manual, and is described in its own syntax.
  1204.             Persons familiar with formal language specification should
  1205.             have no trouble deciphering this description, but the
  1206.             beginning user will do better to study these prototype
  1207.             examples.
  1208.  
  1209.  
  1210.                Example:      A = B + C + D.
  1211.  
  1212.  
  1213.             The item whose name is A is composed exactly of items B, C,
  1214.             and D. The plus sign thus denotes additive composition.
  1215.  
  1216.  
  1217.  
  1218.  
  1219.  
  1220.  
  1221.             Analyst Tool Kit Shareware - 17 -            Revision 012494
  1222.  
  1223.  
  1224.           The Data Dictionary
  1225.             Example:      A = B + C + (D).
  1226.  
  1227.           The parentheses around item D indicate that it is optional.
  1228.           That is, an A must have a B and a C, and it may have a D in
  1229.           its composition.
  1230.  
  1231.  
  1232.             Example:      A = B + C + {D}.
  1233.  
  1234.           The braces around item D indicate that zero or more iterations
  1235.           of D are required. A number may be used before the opening
  1236.           brace to indicate a lower limit on the number of iterations.
  1237.           Similarly, a number may be used after the closing brace to
  1238.           indicate an upper limit on the number of iterations.
  1239.  
  1240.           For instance, 1{digit}8 would specify a string of from one to
  1241.           eight digits (digit may have its own definition elsewhere in
  1242.           the dictionary). The absence of a number before the opening
  1243.           brace implies that a minimum of zero occurrences are
  1244.           permitted, while the absence of a number after the closing
  1245.           brace implies that a potentially infinite number of
  1246.           occurrences are possible.  Notice, then, that A = B + (C) is
  1247.           the same as A = B + {C}1.
  1248.  
  1249.  
  1250.             Example:      A = B + [ C | D ].
  1251.  
  1252.           The bracket and the vertical bar together specify a list of
  1253.           choices. The example would be read, "A is composed of a B and
  1254.           either a C or a D". Notice that the choice is exclusive, that
  1255.           is, A may not contain both a C and a D.
  1256.  
  1257.           To make the choice itself an optional component, we could
  1258.           write,
  1259.  
  1260.                           A = B + ([ C | D ]).
  1261.  
  1262.           which would be read "A is composed of a B, and may include
  1263.           either a C or a D".
  1264.  
  1265.           Whitespace (blanks, tabs, or newlines) may be freely included
  1266.           for readability. Since a single sentence may thus span more
  1267.           than one line, the period which ends the sentence is very
  1268.           important.
  1269.  
  1270.           A comment is a string of text bounded by asterisks.  Comments
  1271.           are also terminated by new lines.  Comments may be freely
  1272.           included virtually anywhere, even between items in a sentence.
  1273.           If a literal asterisk is needed, prefix it with a backslash.
  1274.  
  1275.             Example:      A = B + * this is a comment * C + D.
  1276.  
  1277.             Example:      * comments use the \* to identify themselves *
  1278.  
  1279.           To put some of the preceding information together, the
  1280.           following group of sentences specify the syntax of a FORTRAN
  1281.           style integer variable, which must start with one of the
  1282.  
  1283.           Analyst Tool Kit Shareware - 18 -            Revision 012494
  1284.  
  1285.  
  1286.                                                         The Data Dictionary
  1287.             letters I thru N, and may contain one thru seven additional
  1288.             alphanumeric characters.
  1289.  
  1290.                integer_name = first_char + rest.
  1291.  
  1292.                first_char = [I|J|K|L|M|N].
  1293.  
  1294.                rest = {[ALPHA|NUMBER]}7.
  1295.  
  1296.                ALPHA = letter_of_the_alphabet.
  1297.  
  1298.                NUMBER = DIGIT.
  1299.  
  1300.                letter_of_the_alphabet = PRIMITIVE.
  1301.  
  1302.                DIGIT = PRIMITIVE.
  1303.  
  1304.             Notice that the above description could have been written in a
  1305.             variety of ways, some of them being more concise.
  1306.  
  1307.             The sentence "NUMBER = DIGIT." may seem useless, since it does
  1308.             not decompose NUMBER. In fact, it specifies that NUMBER and
  1309.             DIGIT are aliases , which means that they may be used
  1310.             interchangeably. This feature is useful in a variety of
  1311.             scenarios, such as when portions of a project are specified by
  1312.             different individuals who choose different names for the same
  1313.             thing.
  1314.  
  1315.             Study the data dictionary file called SAMPLE.DCT provided in
  1316.             the SAMPLE subdirectory of the product disk for examples of
  1317.             data dictionary language usage and style.
  1318.  
  1319.  
  1320.  
  1321.  
  1322.  
  1323.  
  1324.  
  1325.  
  1326.  
  1327.  
  1328.  
  1329.  
  1330.  
  1331.  
  1332.  
  1333.  
  1334.  
  1335.  
  1336.  
  1337.  
  1338.  
  1339.  
  1340.  
  1341.  
  1342.  
  1343.  
  1344.  
  1345.             Analyst Tool Kit Shareware - 19 -            Revision 012494
  1346.  
  1347.  
  1348.           Data Dictionary Builder (DDBUILD)
  1349.           Data Dictionary Builder (DDBUILD)
  1350.  
  1351.  
  1352.           DDBUILD is a convenience tool which will scan one or all of
  1353.           the DFDs in a project and extract all the flow and store names
  1354.           used into a preliminary form in the data dictionary. Names
  1355.           appear only once, no matter how many times they are
  1356.           encountered, and are defined equal to TBD. While DDBUILD knows
  1357.           nothing about the intended relationships among the names, it
  1358.           does save the user a tremendous amount of initial typing. The
  1359.           user may then employ any text editor to fill in the necessary
  1360.           information as it becomes available.
  1361.  
  1362.           DDBUILD will create a new data dictionary if one does not
  1363.           exist, or it will append to an existing dictionary. Consider
  1364.           then, that if you change the name of an item in the DFD set
  1365.           and rerun DDBUILD, the new name will be added, but the old
  1366.           name will remain.
  1367.  
  1368.           Command Overview
  1369.  
  1370.           The simplest invocation is to type DDBUILD at the system
  1371.           prompt.  In this case DDBUILD will build or add to a file
  1372.           called DATA.DCT in the current directory the names of all
  1373.           flows and stores found in all the DFDs on the primary chain.
  1374.  
  1375.           NOTE: The primary chain is the chain including -1 and all DFDs
  1376.           whose first number is 0, such as 0.2.3.  It is possible to
  1377.           create DFDs with other digits in the first position, such as
  1378.           3.4.2.  These DFDs are considered to exist on "side chains",
  1379.           and are normally invisible to the analysis tools.  Side chains
  1380.           are a way of keeping DFDs around without having them enter
  1381.           into the analysis.  Such DFDs may be copied (ATTACH, or DOS
  1382.           COPY command) to make them "active".  Notice that DFDs are
  1383.           given filenames which correspond to their dot specifications
  1384.           minus the dots, and file extensions of .DFD.
  1385.  
  1386.           The full command line syntax for DDBUILD is as follows:
  1387.  
  1388.                DDBUILD [-flags] [dfd dfd ... dfd]
  1389.  
  1390.           where brackets [] indicate optional specifications.
  1391.  
  1392.           possible flags are:
  1393.              -i   suppress case sensitivity, e.g., 'ABC' will be treated
  1394.                   the same as 'abc'.
  1395.  
  1396.              -ppath path to use to find DFDs instead of the current
  1397.                   directory
  1398.  
  1399.           Flags are optionally followed by a list of one or more DFDs to
  1400.           add to the dictionary.  The default is to add all DFDs on the
  1401.           main path (-1 and 0*)
  1402.  
  1403.  
  1404.  
  1405.  
  1406.  
  1407.           Analyst Tool Kit Shareware - 20 -            Revision 012494
  1408.  
  1409.  
  1410.                                          Data Dictionary Evaluator (DDEVAL)
  1411.             Data Dictionary Evaluator (DDEVAL)
  1412.  
  1413.  
  1414.             DDEVAL will read a project's data dictionary and DFDs and
  1415.             report errors and omissions in the specifications. When
  1416.             invoked by its name alone, it will look for a file called
  1417.             DATA.DCT in the current directory, and will produce its report
  1418.             to the screen.
  1419.  
  1420.             DDEVAL will perform a somewhat detailed analysis of the
  1421.             dictionary, and is able to report such things as aliasing
  1422.             problems, items which are defined but never used, and items
  1423.             which are undefined.
  1424.  
  1425.             Command Overview
  1426.  
  1427.             The simplest invocation is to type DDEVAL at the system
  1428.             prompt.  In this case DDEVAL will evaluate the data dictionary
  1429.             file DATA.DCT and give a report
  1430.             to the CRT.
  1431.  
  1432.             The full command line syntax for DDEVAL is as follows:
  1433.  
  1434.                  DDEVAL [-flags]
  1435.  
  1436.             where brackets [] indicate optional specifications.
  1437.  
  1438.             possible flags are:
  1439.                -i   ignore case in comparisons (Hello = HELLO)
  1440.  
  1441.                -ppath use 'path' to locate the data dictionary to evaluate.
  1442.  
  1443.             Example:         DDEVAL -PB:\MYSTUFF\
  1444.  
  1445.             will evaluate the data dictionary and DFDs in directory
  1446.             B:\MYSTUFF.
  1447.  
  1448.  
  1449.  
  1450.  
  1451.  
  1452.  
  1453.  
  1454.  
  1455.  
  1456.  
  1457.  
  1458.  
  1459.  
  1460.  
  1461.  
  1462.  
  1463.  
  1464.  
  1465.  
  1466.  
  1467.  
  1468.  
  1469.             Analyst Tool Kit Shareware - 21 -            Revision 012494
  1470.  
  1471.  
  1472.           The Analysis Tool (ANAL)
  1473.           The Analysis Tool (ANAL)
  1474.  
  1475.  
  1476.           Just as DDEVAL performs an analysis from the standpoint of the
  1477.           data dictionary, the tool ANAL performs a similar analysis
  1478.           from the standpoint of the DFDs themselves. Each DFD is
  1479.           examined and a list of potential errors is produced. Most of
  1480.           the evaluation rules apply to a single diagram while a few
  1481.           require a DFD to be examined in context with its parent. In
  1482.           addition, ANAL uses the data dictionary, which it expects to
  1483.           be called DATA.DCT, to determine flow decomposition and
  1484.           aliasing, and can then look for consistency in the diagrams.
  1485.           Thus, it is wise to build as much of the data dictionary as
  1486.           possible before using ANAL, to avoid excessive numbers of
  1487.           errors concerning flows.
  1488.  
  1489.           Command Overview
  1490.  
  1491.           The simplest invocation is to type ANAL at the system prompt.
  1492.           In this case ANAL will examine all the DFDs it can find on the
  1493.           primary chain, and make its report to the standard output.
  1494.  
  1495.           The full command line syntax for ANAL is as follows:
  1496.                ANAL [-flags] [dfd]
  1497.           where brackets [] indicate optional specifications.
  1498.  
  1499.           possible flags are:
  1500.             -a    load data dictionary (DATA.DCT) to resolve aliases for
  1501.                   flows and stores. The -na flag suppresses loading the
  1502.                   dictionary.  The default is to load the dictionary.
  1503.  
  1504.             -i    ignore case in comparisons.  The -ni flag does not
  1505.                   ignore case in comparisons.  The default is to ignore
  1506.                   case.
  1507.  
  1508.             -ppath look for DFDs under the directory 'path'
  1509.  
  1510.           DFD is specified in standard dot notation.
  1511.  
  1512.           Example:         ANAL -i -pB:\MYSTUFF\  0.2.3
  1513.  
  1514.           Two major categories of errors are detected.
  1515.             + Object usage errors which include such things as processes
  1516.              with no flows, duplicate names, and data sources/sinks.
  1517.  
  1518.             + Boundary errors which catch problems occurring across the
  1519.              parent/child interface such as the sudden appearance of a
  1520.              single-line store, or the disappearance of a flow.
  1521.  
  1522.           Also, some cosmetic errors are detected.
  1523.             + Diagrams with too many processes
  1524.  
  1525.             + Diagrams with double line stores where single line stores
  1526.              are expected
  1527.  
  1528.           A description of the customization of the analysis process is
  1529.           provided in full in the manual.  The analysis configuration
  1530.  
  1531.           Analyst Tool Kit Shareware - 22 -            Revision 012494
  1532.  
  1533.  
  1534.                                                    The Analysis Tool (ANAL)
  1535.             file is CONFIG.ANA.  Each of the 11 tests can be set to ON or
  1536.             OFF (default is ON).  The tests are:
  1537.  
  1538.             process flows     store flows      process child or minispec
  1539.             flow endpoints    flow names       duplicate names
  1540.             store double      external context parent child name check
  1541.             parent child flows in              parent child flows out
  1542.  
  1543.             and configuration switches:
  1544.  
  1545.             ignore case    alias checking
  1546.  
  1547.             The example in the SAMPLES1 directory is excellent for
  1548.             illustrating this tool.  Invoking ANAL will give 30 odd lines
  1549.             of errors; half of them are because some processes do not have
  1550.             child diagrams or minispecs.
  1551.  
  1552.             If we decide we aren't ready to have that level of scrutiny
  1553.             yet, we add the line
  1554.                  process child or minispec = OFF
  1555.             to our CONFIG.ANA file.
  1556.  
  1557.             Running ANAL again will give about half-a-dozen errors and
  1558.             warnings.  As is typical, 4 of them have to do with naming
  1559.             conventions.  A flow that is called 'source code' in one
  1560.             diagram is called 'source language' in another.  The data
  1561.             dictionary is used to document and resolve these problems.  A
  1562.             line in the data dictionary stating
  1563.                  source code = source language.
  1564.             will assert this truth (the period is critical).  Similarly,
  1565.             we enter a line
  1566.                  process output = output.
  1567.  
  1568.             Running ANAL -a -ni still has 4 error lines, because the
  1569.             diagram has Process Output (and we entered process output).
  1570.  
  1571.             Running ANAL -a -i now has only two warning lines.  They
  1572.             indicate that in diagram 0.5, the flows in and out of a store
  1573.             are named, and the name is not an alias of the store.  An
  1574.             explanation of why this is an error is that if you have a
  1575.             aluminum recycling bin, you want to make sure no one is
  1576.             putting paper into it.  No one has told the data dictionary
  1577.             that a servicable process is a kind of awaiting process (one
  1578.             that can now be serviced).
  1579.  
  1580.  
  1581.  
  1582.  
  1583.  
  1584.  
  1585.  
  1586.  
  1587.  
  1588.  
  1589.  
  1590.  
  1591.  
  1592.  
  1593.             Analyst Tool Kit Shareware - 23 -            Revision 012494
  1594.  
  1595.  
  1596.           Report Generator
  1597.           Report Generator
  1598.  
  1599.  
  1600.           The Report Generator, called RG, is a pretty printer utility
  1601.           capable of paginating the output from the various tools and
  1602.           providing page header and/or footer capability. The utility
  1603.           will access a file, called CONFIG.RG, to obtain default
  1604.           formatting parameters, and can additionally be used to provide
  1605.           simple formatting for arbitrary user generated files.
  1606.  
  1607.           Command Overview
  1608.  
  1609.           The simplest invocation is to type
  1610.                RG {type}
  1611.           at the system prompt, where {type} is a single digit 1,2,or 3,
  1612.           designating the data dictionary, dictionary exceptions, or DFD
  1613.           tree exceptions respectively.
  1614.  
  1615.           The utility looks for the files DATA.DCT (data dictionary),
  1616.           DICT.ERR (data dictionary exceptions), or DFDS.ERR (DFD tree
  1617.           exceptions) and will automatically invoke DDBUILD, DDEVAL,
  1618.           DDPP, or ANAL to produce them if they are not found.
  1619.  
  1620.           If the output of a tool has been directed to a file with a
  1621.           name other than that expected by RG, the filename should be
  1622.           specified after {type}.
  1623.  
  1624.           NOTE: For the automatic tool invocation to work, a copy of
  1625.           COMMAND.COM must be available on the PATH.
  1626.  
  1627.           A variety of command line options are available with RG, as
  1628.           well as some complex possibilities for CONFIG.RG.  The full
  1629.           command line syntax for RG is as follows:
  1630.  
  1631.                 RG [flags] report-type [report file]
  1632.  
  1633.           Possible flags are;
  1634.              -op   Output the printer initialization string before
  1635.                    printing any text, and output the printer term string
  1636.                    after printing all text.
  1637.  
  1638.              -ml k Use k as the page offset (left margin)
  1639.  
  1640.              -mt k Use k as the top margin
  1641.  
  1642.              -mb k Use k as the bottom margin
  1643.  
  1644.              -st s Use string spec s as the report title
  1645.  
  1646.              -sh s Use string spec s as the page header
  1647.  
  1648.              -sf s Use string s as the page footer
  1649.  
  1650.              -l k  Use k as the page length in lines
  1651.  
  1652.              -w k  Use k as the page width in characters
  1653.  
  1654.  
  1655.           Analyst Tool Kit Shareware - 24 -            Revision 012494
  1656.  
  1657.  
  1658.                                                            Report Generator
  1659.                 -r k Prepare report number k
  1660.  
  1661.  
  1662.                report      Meaning                          intermediate
  1663.             file
  1664.                type
  1665.              ---------   ----------------                   -------------
  1666.                 1       data dictionary                     [data.dct]
  1667.                 2       data dictionary exceptions          [dict.err]
  1668.                 3       DFD-tree exceptions                 [dfds.err]
  1669.                 4       Generic print file report           ----------
  1670.               5-9       User defined reports                ----------
  1671.  
  1672.               report file: A report file can be any legal MS-DOS file name
  1673.                            The file name will support alternate drives and
  1674.                            paths
  1675.  
  1676.             Each report will have a default name (see above).
  1677.  
  1678.             The default titles of user-defined reports can be stored  in
  1679.             the preference file.
  1680.  
  1681.             String notation "..." is supported on the command line to
  1682.             collect a string including spaces, except for characters '<',
  1683.             '>', '|', '+', and '=' which may not be used within them (MS-
  1684.             DOS gets them!).
  1685.  
  1686.                Example:     RG -r2
  1687.  
  1688.             will generate the data dictionary exception report to the
  1689.             screen
  1690.  
  1691.                Example:     RG -op -r3 -of LPT1:
  1692.  
  1693.             will generate the DFD exception report, and print it to the
  1694.             default printer, using printer initialization strings.
  1695.  
  1696.                Example: RG -r4 "-stCurrent Listings,nl,nl" list.txt -f
  1697.                     list.out
  1698.  
  1699.             will generate a user-defined report called Current Listings
  1700.             from a file called list.txt and put it in a file called
  1701.             list.out.
  1702.  
  1703.  
  1704.  
  1705.  
  1706.  
  1707.  
  1708.  
  1709.  
  1710.  
  1711.  
  1712.  
  1713.  
  1714.  
  1715.  
  1716.  
  1717.             Analyst Tool Kit Shareware - 25 -            Revision 012494
  1718.  
  1719.  
  1720.           Miscellaneous Tools
  1721.           Miscellaneous Tools
  1722.  
  1723.  
  1724.           All of the following tools support a -? command line switch to
  1725.           give complete command line syntax; the following descriptions
  1726.           provide the usual usage.
  1727.  
  1728.           ATTACH
  1729.  
  1730.           Data flow diagrams (and their associated minispecs) may need
  1731.           to be reused from one project to the next, or from one part of
  1732.           the project to the next.  Also, sets of diagrams may need to
  1733.           be backed up from time to time.  The tool provided for these
  1734.           jobs is attach.
  1735.  
  1736.           Attach syntax is
  1737.                ATTACH [-sSOURCE-DIR] [-dTARGET-DIR] From-DFD[*] To-DFD
  1738.  
  1739.           The source and target directories may contain drive and
  1740.           directory information.  Use the optional asterisk (*) to copy
  1741.           the entire tree--without it a single DFD will be copied.
  1742.  
  1743.           GEDPS
  1744.  
  1745.           Postscript has become the page description language of choice
  1746.           for desktop publishing.  When presenting DFDs, a neat diagram
  1747.           is essential.  ATK provides encapsulated PostScript files as
  1748.           output from the GEDPS tool.
  1749.  
  1750.           GEDPS syntax is
  1751.                GEDPS [-r] [-foutput-file-or-device] DFD[*]
  1752.  
  1753.           The asterisk is used for wildcarding and is not useful if the
  1754.           documents are incorporated in a desktop publishing system.
  1755.           The output is normally directed to the screen, so the -f flag
  1756.           is normally supplied.  The -r flag is used to rotate the
  1757.           diagrams from their normal landscape orientation on 8-1/2" by
  1758.           11" paper to portrait mode.  The file GEDPS.PS is the
  1759.           Postscript prologue.  GEDPS can take either filenames or DFD
  1760.           numbers.  For desktop publishing applications, put only one
  1761.           DFD in an output file.
  1762.  
  1763.           PS
  1764.  
  1765.           Without a desktop publishing system, it can be difficult to
  1766.           print Postscript files.  Traditional Postscript printers are
  1767.           controlled through the serial port, one of the weaker areas of
  1768.           the IBM PC design.  A tool which supports simple flow-
  1769.           controlled serial port protocol is required--in the absence of
  1770.           other public domain offerings, we include PS.  PS is a very
  1771.           simple program which uses the built in commands to communicate
  1772.           with the serial port.  Because of this, PS may lose received
  1773.           characters sometimes.  This tradeoff was made in the name of
  1774.           full portability.
  1775.  
  1776.           PS syntax is
  1777.  
  1778.  
  1779.           Analyst Tool Kit Shareware - 26 -            Revision 012494
  1780.  
  1781.  
  1782.                                                         Miscellaneous Tools
  1783.                  PS [-p[COM]<1,2,3,4>] [-w] [-b 1200|2400|4800|9600]
  1784.                  filename ...
  1785.  
  1786.             The default port is COM2; COM3 and COM4 are only supported if
  1787.             the BIOS (INT14) recognizes them.  The port characteristics
  1788.             should be set in advance (for IBM PCs, via the MODE command).
  1789.             The -w option is used to wait after all the files have been
  1790.             sent (in case of suspected error messages); pressing any key
  1791.             will exit after download is complete.  The -b option is used
  1792.             to set the baud rate for the COM port.
  1793.  
  1794.             KB
  1795.  
  1796.             The CONFIG.GED file allows remapping of keys via lines of the
  1797.             form
  1798.                  key-code=action
  1799.  
  1800.             Rather than supply a chart to look up key codes, the KB
  1801.             program prints those codes in the appropriate format.  ASCII
  1802.             characters are represented by their codes.  Sample actions
  1803.             include
  1804.                  PROCESS   EXTERNAL  STORE     DESCRIPTION
  1805.                  FLOW      CHILD     PARENT    ROUTE
  1806.             KB also reports mouse codes, if a mouse is detected.  See
  1807.             ACTIONS.DOC for more details.
  1808.  
  1809.  
  1810.  
  1811.  
  1812.  
  1813.  
  1814.  
  1815.  
  1816.  
  1817.  
  1818.  
  1819.  
  1820.  
  1821.  
  1822.  
  1823.  
  1824.  
  1825.  
  1826.  
  1827.  
  1828.  
  1829.  
  1830.  
  1831.  
  1832.  
  1833.  
  1834.  
  1835.  
  1836.  
  1837.  
  1838.  
  1839.  
  1840.  
  1841.             Analyst Tool Kit Shareware - 27 -            Revision 012494
  1842.  
  1843.  
  1844.           Index
  1845.                                       Index
  1846.  
  1847.  
  1848.             A                                  prompt, 11
  1849.              abort DFD, 13                     PS, 26
  1850.              alias, 19                        R
  1851.              ANAL, 2, 5, 10, 12, 22,           RG, 2, 5, 24
  1852.              24                                route point, 14, 15
  1853.              ATTACH, 2, 26                    S
  1854.             B                                  save DFD, 13
  1855.              boundary point, 14                side chain, 20
  1856.             C                                 T
  1857.              chain, 20                         TBD, 17
  1858.              child, 12, 13                     text editor, 8, 16
  1859.              CONFIG.ANA, 23                   U
  1860.              CONFIG.GED, 15, 27                user input, 11
  1861.              CONFIG.RG, 24
  1862.              context diagram, 11
  1863.              cursor, 12, 14
  1864.             D
  1865.              data dictionary, 2, 17,
  1866.              20, 21, 22, 25
  1867.              DDBUILD, 2, 20
  1868.              DDEVAL, 2
  1869.              delete, 15
  1870.              delete DFD, 13
  1871.              DeMarco, Tom, 1
  1872.              description, 15
  1873.              double, 14, 15
  1874.             E
  1875.              editor, 8, 16
  1876.             F
  1877.              floppy, 6
  1878.              flow, 14, 15
  1879.              flow splitter, 14
  1880.             G
  1881.              GED, 2, 5
  1882.              GEDPS, 2, 26
  1883.              GEDPS.PS, 26
  1884.              graphic cursor, 12, 14
  1885.             H
  1886.              hard disk, 6
  1887.             I
  1888.              input, 11
  1889.             M
  1890.              minispec, 10, 12, 13, 16
  1891.              mouse, 10, 16
  1892.              move, 15
  1893.             N
  1894.              name DFD, 13
  1895.              name object, 15
  1896.             P
  1897.              primary chain, 20
  1898.              primitive, 17
  1899.              print, 4, 9, 10, 13, 16,
  1900.              26
  1901.              process, 11
  1902.  
  1903.