head	1.5;
access;
symbols
	tonic_4:1.5
	tonic_3:1.5
	tonic_2:1.5
	demo:1.5.0.2
	design_report:1.5
	oral_presentation_freeze:1.1.0.2;
locks; strict;
comment	@# @;


1.5
date	95.12.11.21.17.09;	author jered;	state Exp;
branches;
next	1.4;

1.4
date	95.12.03.19.54.49;	author hartmans;	state Exp;
branches;
next	1.3;

1.3
date	95.12.03.01.16.04;	author hartmans;	state Exp;
branches;
next	1.2;

1.2
date	95.12.01.03.38.53;	author hartmans;	state Exp;
branches;
next	1.1;

1.1
date	95.11.21.19.55.20;	author jered;	state Exp;
branches
	1.1.2.1;
next	;

1.1.2.1
date	95.11.30.11.32.49;	author jered;	state Exp;
branches;
next	1.1.2.2;

1.1.2.2
date	95.12.01.02.58.06;	author jered;	state Exp;
branches;
next	;


desc
@@


1.5
log
@Doc fixes
@
text
@digraph G {
  orientation=landscape;
  nodesep=.10;

  node [shape=box, fontsize=12];
// Clustering
  subgraph cluster0 {
     tic_board;
     tic_move;
     tic_move_gen;
     label = "tic-tac-toe game"  
  }

  subgraph cluster1 {
     antichess_board;
     chess_display_board;
     chess_capture_move;
     antichess_move_gen;
     parse_square [shape=ellipse];
     label = "antichess game"  
  }

// Procedural abstractions:
parse_query [shape=ellipse];
unescape_uri [shape=ellipse];

// Inheritance (subclassing)
  edge [style=bold];   //weight=3
  top_node -> dir_node -> web_node;
  machine_player -> player -> web_node;
  human_player -> player;
  antichess_board -> chess_display_board -> board -> web_node;
  chess_capture_move -> move;
  antichess_move_gen -> move_generator;
  game -> web_node;
  tic_move -> move;
  tic_move_gen -> move_generator;
  tic_board -> board;

// Strong dependencies
  edge [dir=forward,style=solid];
web_node -> unescape_uri [label = "used by children"];
web_node -> parse_query [label = "used by children"];

  game -> board;
  game -> player;
  game -> move;
  top_node -> antichess_board;
  top_node -> tic_board;
  top_node -> game;
  top_node -> machine_player;
  top_node -> human_player;
  antichess_board -> chess_capture_move;
  antichess_board -> antichess_move_gen;
  antichess_board -> game;
  antichess_board -> player;
  antichess_move_gen -> antichess_board;
  antichess_move_gen -> chess_capture_move;
  chess_capture_move -> chess_display_board;
  chess_display_board -> game;
chess_display_board->chess_capture_move;
chess_display_board -> parse_square;
  tic_board -> tic_move;
  tic_board -> tic_move_gen;
  tic_board -> game;
  tic_board -> player;
  tic_move_gen -> tic_board;
  tic_move_gen -> tic_move;
  tic_move -> tic_board;
  board -> game;
  human_player -> top_node;
  human_player -> game;
  player -> game;  

  
// Weak dependencies
  edge [style=dotted,weight=1];
  board -> game;  
  player -> move;
  board -> player;

// Omitted for clarity
//  new_typeinfo [label="new_typeinfo\n(Dependencies omitted\nfor clarity)",
//                fontsize=10];
//  http_response[label="http_response\n(Dependencies omitted\nfor clarity)",
//                fontsize=10];
}
@


1.4
log
@Additional changes including parse_query, etc.
@
text
@d19 1
a19 1
parse_square [shape=ellipse];
@


1.3
log
@Add parse_square, remove some bogus
dependencies.
@
text
@d23 4
d42 3
@


1.2
log
@Integrate oral presentation changes into main line.
@
text
@d19 1
d52 1
a52 1
  chess_capture_move -> antichess_board;
d54 2
a55 1
  chess_display_board -> player;
a63 1
  board -> player;
d66 1
d73 1
a73 1
  player -> game;  
@


1.1
log
@Added the MDD source for dot, and the current PostScript output.
(Dot is available from jered. Ask him to find some place to install it.)
(So are dotty, tcldot, and neato. See the man pages in /mit/6.170/groups/se01/
man...)
@
text
@d2 36
a37 14
  node [shape=box];
  antichess_server [label="Antichess\nserver"];
  antichess_server -> antichess_board -> chess_display_board ->
    board -> new_typeinfo;
  antichess_server -> machine_player -> player -> move -> new_typeinfo;
  antichess_server -> game -> http_response;
  antichess_server -> player -> web_node;
  antichess_board -> move;
  board -> move;
  antichess_board -> new_typeinfo;
  chess_display_board -> new_typeinfo;
  board -> web_node;
  board -> player;
  board -> http_response;
a38 2
  game -> board;
  game -> web_node;
d40 38
a77 2
  player -> game;
  player -> http_response;
@


1.1.2.1
log
@Updated mdd.
dot is in /mit/jered/sipb/sun4bin
@
text
@d2 16
a17 28
  orientation=landscape;
  nodesep=.10;

  node [shape=box, fontsize=12];
// Clustering
  subgraph cluster0 {
     tic_board;
     tic_move;
     tic_move_gen;
     label = "tic-tac-toe game"  
  }

  subgraph cluster1 {
     antichess_board;
     chess_display_board;
     chess_capture_move;
     antichess_move_gen;
     label = "antichess game"  
  }

// Inheritance (subclassing)
  edge [dir=back,style=bold,weight=3];
  top_node -> dir_node -> web_node;
  machine_player -> player -> web_node;
  human_player -> player;
  antichess_board -> chess_display_board -> board -> web_node;
  chess_capture_move -> move;
  antichess_move_gen -> move_generator;
a18 8
  tic_move -> move;
  tic_move_gen -> move_generator;
  tic_board -> board;

// Strong dependencies
  edge [dir=forward,style=solid,weight=1];
  game -> board;
  game -> player;
d20 2
a21 38
  top_node -> antichess_board;
  top_node -> tic_board;
  top_node -> game;
  top_node -> machine_player;
  top_node -> human_player;
  antichess_board -> chess_capture_move;
  antichess_board -> antichess_move_gen;
  antichess_board -> game;
  antichess_board -> player;
  antichess_move_gen -> antichess_board;
  antichess_move_gen -> chess_capture_move;
  chess_capture_move -> antichess_board;
  chess_display_board -> game;
  chess_display_board -> player;
  tic_board -> tic_move;
  tic_board -> tic_move_gen;
  tic_board -> game;
  tic_board -> player;
  tic_move_gen -> tic_board;
  tic_move_gen -> tic_move;
  tic_move -> tic_board;
  board -> game;
  board -> player;
  human_player -> top_node;
  human_player -> game;

  
// Weak dependencies
  edge [style=dotted,weight=1];
  board -> game;  
  player -> move;
  player -> game;  

// Omitted for clarity
//  new_typeinfo [label="new_typeinfo\n(Dependencies omitted\nfor clarity)",
//                fontsize=10];
//  http_response[label="http_response\n(Dependencies omitted\nfor clarity)",
//                fontsize=10];
@


1.1.2.2
log
@Modified MDD slightly.
@
text
@d23 1
a23 1
  edge [style=bold];   //weight=3
d36 1
a36 1
  edge [dir=forward,style=solid];
@
