README
1UML::Sequence and its helpers produce UML sequence diagrams (they are probably
2not compliant with any of the UML specifications, but I find them useful).
3
4INSTALL
5
6Do the standard things:
7 perl Makefile.PL
8 make
9 make test
10 make install
11 make clean
12
13COPYRIGHT and LICENSE
14
15Copyright 2003-6, Philip Crow. All rights reserved. You may distribute
16and/or modify these programs under the same terms as Perl 5.8 itself.
17
18DESCRIPTION
19
20There are samples in the samples directory in the distribution. The
21samples have the code and pictures (in svg and png formats).
22
23Simple Sequences
24
25You can create a sequence from an outline. Type something like this:
26
27At Home.Wash Car
28 Garage.retrieve bucket
29 Kitchen.prepare bucket
30 Kitchen.pour soap in bucket
31 Kitchen.fill bucket
32 Garage.get sponge
33 Garage.open door
34 Driveway.apply soapy water
35 Driveway.rinse
36 Driveway.empty bucket
37 Garage.close door
38 Garage.replace sponge
39 Garage.replace bucket
40
41Then do this (to generate SVG output):
42
43 genericseq.pl UML::Sequence::SimpleSeq inputfile | seq2svg.pl > output.svg
44
45or this (to generate raster image output, e.g., PNG):
46
47 genericseq.pl UML::Sequence::SimpleSeq inputfile | seq2rast.pl > output.png
48
49Perl Sequences
50
51To produce sequences of Perl programs, first make a list of the methods
52you care about like this:
53
54 DiePair::new
55 Die::new
56 DiePair::roll
57 Die::roll
58 DiePair::total
59 DiePair::doubles
60 DiePair::to_string
61
62Then do this:
63
64 genericseq.pl UML::Sequence::PerlSeq method_file program args | seq2svg.pl > output.svg
65
66Java Sequences
67
68You must have tools.jar in your classpath. It must contain the Java Platform
69Debugger Architecture. The stars must properly align. Then make a file
70of classes (or methods) you want to hear about, like this:
71
72 ALL
73 Hello
74 HelloHelper
75
76The ALL means all methods. The other lines are classes. All the methods from
77those classes will appear in the diagram. To restrict the list of methods,
78include full signatures.
79
80After you make the methods file, do this:
81
82 genericseq.pl UML::Sequence::JavaSeq method_file program args | seq2svg.pl > output.svg
83
84For this to work, you must have Seq.class from the distribution and tools.jar
85from sdk 1.3 or later in your java_home/lib directory. I also found that
86when my Linux system is not on the network, the Java Platform Debugger
87Architecture (jpda) didn't want to run.
88
89To build your own outliner, implement the same methods as
90UML::Sequence::SimpleSeq.pm. Then use genericseq.pl and seq2svg.pl.
91
92Please send questions or comments to Phil Crow at philcrow2000@yahoo.com.
93