SlideShare uma empresa Scribd logo
1 de 69
Baixar para ler offline
How to quickly create complicated
         message sequence charts
      automatically without spending
           money on software.
            Debra Klopfenstein, SGI
               dklopfenstein@alum.rpi.edu



2/5/2008    Debra Klopfenstein, © 2008 SGI. All rights reserved.
A Simple Story




2/5/2008   Debra Klopfenstein, © 2008 SGI. All rights reserved.
Gets Complicated Quickly…




2/5/2008        Debra Klopfenstein, © 2008 SGI. All rights reserved.
Event Order is Added…




2/5/2008       Debra Klopfenstein, © 2008 SGI. All rights reserved.
Hundreds of Thousands of Stories!
• Goal is Speed, Accuracy (Cheap):
  –Understand
  –Explain
  –Document
  –Debug


2/5/2008   Debra Klopfenstein, © 2008 SGI. All rights reserved.
A Picture is…
• A Picture is Helpful:
      – Can Not Forget Important Events
      – Less Confusing than Words Alone
      – More Concise than Words Alone
      – Good ‘Birds-Eye-View’

• But What a Pain:
      – Time-Consuming
      – Error-Prone
2/5/2008          Debra Klopfenstein, © 2008 SGI. All rights reserved.
Agenda

• How you can implement
  Automatic Picture Generation

• Real-Life Limitations

• Other Approaches
2/5/2008   Debra Klopfenstein, © 2008 SGI. All rights reserved.
Three Views (same info)
• Diagram of Event Flow among Logic Blocks

• Diagram in Message Sequence Chart Format

• Text Log file




2/5/2008          Debra Klopfenstein, © 2008 SGI. All rights reserved.
Event Flow among Logic Blocks




2/5/2008      Debra Klopfenstein, © 2008 SGI. All rights reserved.
Message Sequence Chart Format




2/5/2008   Debra Klopfenstein, © 2008 SGI. All rights reserved.
Simulation Log File
P1     OMSG ReadExcl A=0x420500 dst=M0 req=P1
M0     IMSG ReadExcl A=0x420500 dst=M0 req=P1
M0     DirState: A=0x420500 E{P0}->BUSY{P1}
M0     OMSG InterExcl A=0x420500 dst=P0 req=P1
M0     OMSG ExclSpec+D A=0x420500 dst=P0 req=P1
P0     IMSG InterExcl A=0x420500 dst=P0 req=P1
P0     CchState: A=0x420500 E->I
P0     OMSG Purge dst=M0 req=P1 from=P0
P0     OMSG ExclAck+D dst=P1 home=M0
P1     IMSG ExclSpec+D A=0x420500 dst=P0 req=P1

2/5/2008         Debra Klopfenstein, © 2008 SGI. All rights reserved.
Simulation Log File
P1     OMSG ReadExcl A=0x420500 dst=M0 req=P1
M0     IMSG ReadExcl A=0x420500 dst=M0 req=P1
M0     DirState: A=0x420500 E{P0}->BUSY{P1}
M0     OMSG InterExcl A=0x420500 dst=P0 req=P1
M0     OMSG ExclSpec+D A=0x420500 dst=P0 req=P1
P0     IMSG InterExcl A=0x420500 dst=P0 req=P1
P0     CchState: A=0x420500 E->I
P0     OMSG Purge dst=M0 req=P1 from=P0
P0     OMSG ExclAck+D dst=P1 home=M0
P1     IMSG ExclSpec+D A=0x420500 dst=P0 req=P1

2/5/2008         Debra Klopfenstein, © 2008 SGI. All rights reserved.
Message Sequence Chart Coordinates




2/5/2008   Debra Klopfenstein, © 2008 SGI. All rights reserved.
The first two events in the log file


P1 OMSG ReadExcl A=0x420500 dst=M0 req=P1
M0 IMSG ReadExcl A=0x420500 dst=M0 req=P1




2/5/2008     Debra Klopfenstein, © 2008 SGI. All rights reserved.
The first two events in the log file
Y=1 P1(X=1) OMSG ReadExcl …
Y=2 M0(X=2) IMSG ReadExcl …




2/5/2008     Debra Klopfenstein, © 2008 SGI. All rights reserved.
Log File with Coordinates
Y=0        P1(X=1)   OMSG ReadExcl
Y=1        M0(X=2)   IMSG ReadExcl
Y=2        M0(X=2)   DirState: E{P0}->BUSY{P1}
Y=3        M0(X=2)   OMSG InterExcl
Y=4        M0(X=2)   OMSG ExclSpec+D
Y=5        P0(X=0)   IMSG InterExcl
Y=6        P0(X=0)   CchState: E->I
Y=7        P0(X=0)   OMSG Purge
Y=8        P0(X=0)   OMSG ExclAck+D
Y=9        P1(X=1)   IMSG ExclSpec+D

2/5/2008         Debra Klopfenstein, © 2008 SGI. All rights reserved.
Message Sequence Chart Format




2/5/2008   Debra Klopfenstein, © 2008 SGI. All rights reserved.
Which Diagram is Easiest to Generate
            Automatically?


• Simple Graphical Objects

• Simple and predictable object placement




2/5/2008      Debra Klopfenstein, © 2008 SGI. All rights reserved.
Contains Rectangles




2/5/2008     Debra Klopfenstein, © 2008 SGI. All rights reserved.
Contains Straight Lines




2/5/2008       Debra Klopfenstein, © 2008 SGI. All rights reserved.
Contains Bent Lines




2/5/2008     Debra Klopfenstein, © 2008 SGI. All rights reserved.
Contains Text




2/5/2008   Debra Klopfenstein, © 2008 SGI. All rights reserved.
Image Object Placement




2/5/2008       Debra Klopfenstein, © 2008 SGI. All rights reserved.
Message Arrow Placement




2/5/2008        Debra Klopfenstein, © 2008 SGI. All rights reserved.
Message Sequence Chart
• Two Object Types
     – Straight Lines
     – Text


• Simple Placement
     – X is logic blocks
     – Y is event order




2/5/2008                Debra Klopfenstein, © 2008 SGI. All rights reserved.
Diagram Comparison
Logic Diagram                                          Message Sequence Chart
• Many Object Types                                    • Two Object Types
           Straight Lines                                      – Straight Lines
      –
           Text                                                – Text
      –
           Rectangles of different sizes
      –
           Bent Lines
      –
• Placement                                            • Placement
      – Complex                                                – Simple
      – Has Dependencies                                       – Predictable
      – Hard-to-Follow                                         – Easy-to-Follow



2/5/2008                   Debra Klopfenstein, © 2008 SGI. All rights reserved.
Script Overview


           1. Inputs and Outputs

           2. Innards



2/5/2008         Debra Klopfenstein, © 2008 SGI. All rights reserved.
Log2img Inputs and Outputs




2/5/2008         Debra Klopfenstein, © 2008 SGI. All rights reserved.
Multiple Graphics Outputs. How?




2/5/2008   Debra Klopfenstein, © 2008 SGI. All rights reserved.
Input to convert




2/5/2008   Debra Klopfenstein, © 2008 SGI. All rights reserved.
Graphic Format Requirements

• Easy for an ASIC Engineer to write:
   –Origin in upper left
   –Easy to create lines
   –Easy to create text
   –Graphics file contains text, not binary


2/5/2008          Debra Klopfenstein, © 2008 SGI. All rights reserved.
Input to convert: FIG Format




2/5/2008          Debra Klopfenstein, © 2008 SGI. All rights reserved.
FIG Format: Text Log(X,Y)



#     ReadExcl Text
#     etc..   X   Y   Text
#     ----- ---- ---- --------
4     (...)   1     0 ReadExcl

2/5/2008        Debra Klopfenstein, © 2008 SGI. All rights reserved.
FIG Format: Text Fig(X,Y)



#     ReadExcl Text
#     etc..   X   Y   Text
#     ----- ---- ---- --------
4     (...) 1000 1800 ReadExcl

2/5/2008        Debra Klopfenstein, © 2008 SGI. All rights reserved.
FIG Format: Text Angle



#    ReadExcl Text
#    .. AngleRadians X    Y Text
#    -- -------- -- ---- ---- --------
4    .. -0.16514 .. 1000 1800 ReadExcl


2/5/2008       Debra Klopfenstein, © 2008 SGI. All rights reserved.
FIG Format: Text Angle




# .. AngleRadians X    Y   Text
# -- -------- -- ---- ---- --------
4 .. -0.16514 .. 1000 1800 ReadExcl

2/5/2008       Debra Klopfenstein, © 2008 SGI. All rights reserved.
SOH-CAH-TOA




2/5/2008   Debra Klopfenstein, © 2008 SGI. All rights reserved.
SOH-CAH-TOA




2/5/2008   Debra Klopfenstein, © 2008 SGI. All rights reserved.
FIG Format for Lines



# ReadExcl Arrow
2 (...) # Line Info (width, color, etc)
  1 1 1.00 100.00 120.00 # Arrow Info
  1000 1800 2500 2050 #(X0,Y0),(X1,Y1)



2/5/2008     Debra Klopfenstein, © 2008 SGI. All rights reserved.
1st Script Section




2/5/2008    Debra Klopfenstein, © 2008 SGI. All rights reserved.
Grouping Image Objects




2/5/2008       Debra Klopfenstein, © 2008 SGI. All rights reserved.
Two kinds of Image Objects
• Message Image Objects



• Text Image Objects




2/5/2008         Debra Klopfenstein, © 2008 SGI. All rights reserved.
Msg Image Object 0 (1st Section)



P1     OMSG ReadExcl A=0x420500 dst=M0 req=P1
M0     IMSG ReadExcl A=0x420500 dst=M0 req=P1
M0     DirState: A=0x420500 E{P0}->BUSY{P1}
M0     OMSG InterExcl A=0x420500 dst=P0 req=P1
M0     OMSG ExclSpec+D A=0x420500 dst=P0 req=P1
P0     IMSG InterExcl A=0x420500 dst=P0 req=P1

2/5/2008         Debra Klopfenstein, © 2008 SGI. All rights reserved.
Msg Image Object 0 (2nd Section)



P1     OMSG ReadExcl A=0x420500 dst=M0 req=P1
M0     IMSG ReadExcl A=0x420500 dst=M0 req=P1
M0     DirState: A=0x420500 E{P0}->BUSY{P1}
M0     OMSG InterExcl A=0x420500 dst=P0 req=P1
M0     OMSG ExclSpec+D A=0x420500 dst=P0 req=P1
P0     IMSG InterExcl A=0x420500 dst=P0 req=P1

2/5/2008         Debra Klopfenstein, © 2008 SGI. All rights reserved.
How to Match Msg Image Sections



P1     OMSG ReadExcl A=0x420500 dst=M0 req=P1
M0     IMSG ReadExcl A=0x420500 dst=M0 req=P1
M0     DirState: A=0x420500 E{P0}->BUSY{P1}
M0     OMSG InterExcl A=0x420500 dst=P0 req=P1
M0     OMSG ExclSpec+D A=0x420500 dst=P0 req=P1
P0     IMSG InterExcl A=0x420500 dst=P0 req=P1

2/5/2008         Debra Klopfenstein, © 2008 SGI. All rights reserved.
Text Image Object 1



P1     OMSG ReadExcl A=0x420500 dst=M0 req=P1
M0     IMSG ReadExcl A=0x420500 dst=M0 req=P1
M0     DirState: A=0x420500 E{P0}->BUSY{P1}
M0     OMSG InterExcl A=0x420500 dst=P0 req=P1
M0     OMSG ExclSpec+D A=0x420500 dst=P0 req=P1
P0     IMSG InterExcl A=0x420500 dst=P0 req=P1

2/5/2008         Debra Klopfenstein, © 2008 SGI. All rights reserved.
Image Object 2 (1st section)



P1     OMSG ReadExcl A=0x420500 dst=M0 req=P1
M0     IMSG ReadExcl A=0x420500 dst=M0 req=P1
M0     DirState: A=0x420500 E{P0}->BUSY{P1}
M0     OMSG InterExcl A=0x420500 dst=P0 req=P1
M0     OMSG ExclSpec+D A=0x420500 dst=P0 req=P1
P0     IMSG InterExcl A=0x420500 dst=P0 req=P1

2/5/2008         Debra Klopfenstein, © 2008 SGI. All rights reserved.
How to Match Msg Image Sections



P1     OMSG ReadExcl A=0x420500 dst=M0 req=P1
M0     IMSG ReadExcl A=0x420500 dst=M0 req=P1
M0     DirState: A=0x420500 E{P0}->BUSY{P1}
M0     OMSG InterExcl A=0x420500 dst=P0 req=P1
M0     OMSG ExclSpec+D A=0x420500 dst=P0 req=P1
P0     IMSG InterExcl A=0x420500 dst=P0 req=P1

2/5/2008         Debra Klopfenstein, © 2008 SGI. All rights reserved.
Image Object Array




…
M0 OMSG InterExcl A=0x420500 dst=P0 req=P1
M0 OMSG ExclSpec+D A=0x420500 dst=P0 req=P1
…
2/5/2008     Debra Klopfenstein, © 2008 SGI. All rights reserved.
ImageObj Array of Hashes
idx    Printed Text                     X0          Y0                      X1   Y1
0      ReadExcl                         P1          0                       M0   1
1      E{P0}->BUSY{P1}                  M0          2
2      InterExcl                        M0          3                       P0   5
3      ExclSpec+D                       M0          4                       P1   9
4      E->I                             P0          6
5      Purge                            P0          7                       M0   12
6      ExclAck                          P0          8                       P1   10
7      I->E                             P1          11
8      Busy{P1}->E{P1}                  M0          13




2/5/2008                 Debra Klopfenstein, © 2008 SGI. All rights reserved.
Print Obj[0]




2/5/2008   Debra Klopfenstein, © 2008 SGI. All rights reserved.
Print Obj[1]




2/5/2008   Debra Klopfenstein, © 2008 SGI. All rights reserved.
Print Obj[2]




2/5/2008   Debra Klopfenstein, © 2008 SGI. All rights reserved.
Print Obj[3]




2/5/2008   Debra Klopfenstein, © 2008 SGI. All rights reserved.
Print Obj[4]




2/5/2008   Debra Klopfenstein, © 2008 SGI. All rights reserved.
Print Obj[5]




2/5/2008   Debra Klopfenstein, © 2008 SGI. All rights reserved.
Print Obj[6]




2/5/2008   Debra Klopfenstein, © 2008 SGI. All rights reserved.
Print Obj[7]




2/5/2008   Debra Klopfenstein, © 2008 SGI. All rights reserved.
Print Obj[8]




2/5/2008   Debra Klopfenstein, © 2008 SGI. All rights reserved.
1st Script Section




2/5/2008    Debra Klopfenstein, © 2008 SGI. All rights reserved.
From Text to Diagrams:
           FAST ACCURATE CHEAP

                                                        Diagrams
Text
o Verbose                                                     Simple
P1 OMSG ReadExcl A=0x420500 dst=M0 req=P1
M0 IMSG ReadExcl A=0x420500 dst=M0 req=P1




o Birds-Eye View:
                                                              Birds-Eye-View:
      –S L O W                                                      FAST
o Hard-to-Read
                                                              Easy-to-read
2/5/2008                    Debra Klopfenstein, © 2008 SGI. All rights reserved.
Limitations
• When Message Sequence Charts become:


           TOO BIG
• Alternate Visualization Techniques
      – PacketViz
      – Colored Message Log sub-sections

2/5/2008          Debra Klopfenstein, © 2008 SGI. All rights reserved.
When MSCs Become Too Big




2/5/2008        Debra Klopfenstein, © 2008 SGI. All rights reserved.
PacketViz




From Wikipedia…




2/5/2008          Debra Klopfenstein, © 2008 SGI. All rights reserved.
Script Flow for PacketViz Option




2/5/2008     Debra Klopfenstein, © 2008 SGI. All rights reserved.
Script Flow for Only PacketViz




2/5/2008          Debra Klopfenstein, © 2008 SGI. All rights reserved.
Another Visualization Technique




2/5/2008     Debra Klopfenstein, © 2008 SGI. All rights reserved.
Conclusion

• Introduction to creating your own
  log2img script
• Real-Life Limitations
• Other Approaches


2/5/2008   Debra Klopfenstein, © 2008 SGI. All rights reserved.
Thank You
    Ramesh Satyanarayana                         Marla Robinson
•                                          •
    Trevor Williams                              Rex Klopfenstein
•                                          •
    Christine Macneil                            Maryann Klopfenstein
•                                          •
    Karen Wilk                                   Alan Klopfenstein
•                                          •
    Beth Brooks                                  Fred Eisner
•                                          •
    Mike Woodacre                                Paul Adams
•                                          •
    Gerry Epstein                                Alan Sneider
•                                          •



2/5/2008        Debra Klopfenstein, © 2008 SGI. All rights reserved.

Mais conteúdo relacionado

Destaque

Potential Issues within BCE
Potential Issues within BCEPotential Issues within BCE
Potential Issues within BCEJISC BCE
 
Digital Marketplaces Could Solve a Huge Problem For Wholesale Buyers at Live ...
Digital Marketplaces Could Solve a Huge Problem For Wholesale Buyers at Live ...Digital Marketplaces Could Solve a Huge Problem For Wholesale Buyers at Live ...
Digital Marketplaces Could Solve a Huge Problem For Wholesale Buyers at Live ...Michelle Bruno
 
Implementación de tfs 2010 en entornos complejos (cómo y por qué) v03
Implementación de tfs 2010 en entornos complejos (cómo y por qué) v03Implementación de tfs 2010 en entornos complejos (cómo y por qué) v03
Implementación de tfs 2010 en entornos complejos (cómo y por qué) v03Diego Ferreyra
 
Kick Off之後,是專案的開始,還是災難的開始 Robert Fan
Kick Off之後,是專案的開始,還是災難的開始 Robert FanKick Off之後,是專案的開始,還是災難的開始 Robert Fan
Kick Off之後,是專案的開始,還是災難的開始 Robert Fan悠識學院
 
Fda Acceptance Of Foreign Clinical Trial Data Feb 2009
Fda Acceptance Of Foreign Clinical Trial Data Feb 2009Fda Acceptance Of Foreign Clinical Trial Data Feb 2009
Fda Acceptance Of Foreign Clinical Trial Data Feb 2009Mukesh Kumar, PhD, RAC
 
Sharepoint Web Solutions case study presentation at In-Telligent 2008 Confere...
Sharepoint Web Solutions case study presentation at In-Telligent 2008 Confere...Sharepoint Web Solutions case study presentation at In-Telligent 2008 Confere...
Sharepoint Web Solutions case study presentation at In-Telligent 2008 Confere...Jean-Claude Monney
 
BoF-09 Silverlight and WIF /TechEd Japan 2010
BoF-09 Silverlight and WIF /TechEd Japan 2010BoF-09 Silverlight and WIF /TechEd Japan 2010
BoF-09 Silverlight and WIF /TechEd Japan 2010Naohiro Fujie
 

Destaque (13)

Potential Issues within BCE
Potential Issues within BCEPotential Issues within BCE
Potential Issues within BCE
 
Amazing Hq Wallpapers
Amazing Hq WallpapersAmazing Hq Wallpapers
Amazing Hq Wallpapers
 
Digital Marketplaces Could Solve a Huge Problem For Wholesale Buyers at Live ...
Digital Marketplaces Could Solve a Huge Problem For Wholesale Buyers at Live ...Digital Marketplaces Could Solve a Huge Problem For Wholesale Buyers at Live ...
Digital Marketplaces Could Solve a Huge Problem For Wholesale Buyers at Live ...
 
Implementación de tfs 2010 en entornos complejos (cómo y por qué) v03
Implementación de tfs 2010 en entornos complejos (cómo y por qué) v03Implementación de tfs 2010 en entornos complejos (cómo y por qué) v03
Implementación de tfs 2010 en entornos complejos (cómo y por qué) v03
 
Dividends
DividendsDividends
Dividends
 
Ot 15.2
Ot 15.2Ot 15.2
Ot 15.2
 
Swim_2013_02_19_jpn
Swim_2013_02_19_jpnSwim_2013_02_19_jpn
Swim_2013_02_19_jpn
 
Kick Off之後,是專案的開始,還是災難的開始 Robert Fan
Kick Off之後,是專案的開始,還是災難的開始 Robert FanKick Off之後,是專案的開始,還是災難的開始 Robert Fan
Kick Off之後,是專案的開始,還是災難的開始 Robert Fan
 
Fda Acceptance Of Foreign Clinical Trial Data Feb 2009
Fda Acceptance Of Foreign Clinical Trial Data Feb 2009Fda Acceptance Of Foreign Clinical Trial Data Feb 2009
Fda Acceptance Of Foreign Clinical Trial Data Feb 2009
 
Sharepoint Web Solutions case study presentation at In-Telligent 2008 Confere...
Sharepoint Web Solutions case study presentation at In-Telligent 2008 Confere...Sharepoint Web Solutions case study presentation at In-Telligent 2008 Confere...
Sharepoint Web Solutions case study presentation at In-Telligent 2008 Confere...
 
BoF-09 Silverlight and WIF /TechEd Japan 2010
BoF-09 Silverlight and WIF /TechEd Japan 2010BoF-09 Silverlight and WIF /TechEd Japan 2010
BoF-09 Silverlight and WIF /TechEd Japan 2010
 
Summer In Greece
Summer In GreeceSummer In Greece
Summer In Greece
 
Anal ca vakalis
Anal  ca vakalisAnal  ca vakalis
Anal ca vakalis
 

Semelhante a Dklopfenstein Designcon08

Piece Framework 2.0 Background
Piece Framework 2.0 BackgroundPiece Framework 2.0 Background
Piece Framework 2.0 BackgroundAtsuhiro Kubo
 
Christophe Jolif - Flex Data Visualization going one step further with IBM IL...
Christophe Jolif - Flex Data Visualization going one step further with IBM IL...Christophe Jolif - Flex Data Visualization going one step further with IBM IL...
Christophe Jolif - Flex Data Visualization going one step further with IBM IL...360|Conferences
 
TMPA-2017: Dl-Check: Dynamic Potential Deadlock Detection Tool for Java Programs
TMPA-2017: Dl-Check: Dynamic Potential Deadlock Detection Tool for Java ProgramsTMPA-2017: Dl-Check: Dynamic Potential Deadlock Detection Tool for Java Programs
TMPA-2017: Dl-Check: Dynamic Potential Deadlock Detection Tool for Java ProgramsIosif Itkin
 
My Name is E & Open Standards
My Name is E & Open StandardsMy Name is E & Open Standards
My Name is E & Open StandardsAndreas - Creten
 
닷넷 개발자를 위한 패턴이야기
닷넷 개발자를 위한 패턴이야기닷넷 개발자를 위한 패턴이야기
닷넷 개발자를 위한 패턴이야기YoungSu Son
 
The DE-9IM Matrix in Details using ST_Relate: In Picture and SQL
The DE-9IM Matrix in Details using ST_Relate: In Picture and SQLThe DE-9IM Matrix in Details using ST_Relate: In Picture and SQL
The DE-9IM Matrix in Details using ST_Relate: In Picture and SQLtorp42
 
Beyond the GFLOPS
Beyond the GFLOPSBeyond the GFLOPS
Beyond the GFLOPSSlide_N
 
LSGAN - SIMPle(Simple Idea Meaningful Performance Level up)
LSGAN - SIMPle(Simple Idea Meaningful Performance Level up)LSGAN - SIMPle(Simple Idea Meaningful Performance Level up)
LSGAN - SIMPle(Simple Idea Meaningful Performance Level up)Hansol Kang
 
Lossless Encryption using BITPLANE and EDGEMAP Crypt Algorithms
Lossless Encryption using BITPLANE and EDGEMAP Crypt AlgorithmsLossless Encryption using BITPLANE and EDGEMAP Crypt Algorithms
Lossless Encryption using BITPLANE and EDGEMAP Crypt AlgorithmsIRJET Journal
 
TAUS USER CONFERENCE 2009, Normalization of translation memories
TAUS USER CONFERENCE 2009, Normalization of translation memoriesTAUS USER CONFERENCE 2009, Normalization of translation memories
TAUS USER CONFERENCE 2009, Normalization of translation memoriesTAUS - The Language Data Network
 
Getting more out of Matplotlib with GR
Getting more out of Matplotlib with GRGetting more out of Matplotlib with GR
Getting more out of Matplotlib with GRJosef Heinen
 
Class[2][29th may] [javascript]
Class[2][29th may] [javascript]Class[2][29th may] [javascript]
Class[2][29th may] [javascript]Saajid Akram
 
Actor Concurrency
Actor ConcurrencyActor Concurrency
Actor ConcurrencyAlex Miller
 
Methods to test an e-learning Web application.
Methods to test an e-learning Web application.Methods to test an e-learning Web application.
Methods to test an e-learning Web application.telss09
 
“I Know What You Did Before”: General Framework for Correlation Analysis of C...
“I Know What You Did Before”: General Framework for Correlation Analysis of C...“I Know What You Did Before”: General Framework for Correlation Analysis of C...
“I Know What You Did Before”: General Framework for Correlation Analysis of C...D Andrew Kim
 
JavaScriptとWebGLで取り組む
クリエイティブコーディング
JavaScriptとWebGLで取り組む
クリエイティブコーディングJavaScriptとWebGLで取り組む
クリエイティブコーディング
JavaScriptとWebGLで取り組む
クリエイティブコーディングYasunobu Ikeda
 

Semelhante a Dklopfenstein Designcon08 (20)

Piece Framework 2.0 Background
Piece Framework 2.0 BackgroundPiece Framework 2.0 Background
Piece Framework 2.0 Background
 
Christophe Jolif - Flex Data Visualization going one step further with IBM IL...
Christophe Jolif - Flex Data Visualization going one step further with IBM IL...Christophe Jolif - Flex Data Visualization going one step further with IBM IL...
Christophe Jolif - Flex Data Visualization going one step further with IBM IL...
 
TMPA-2017: Dl-Check: Dynamic Potential Deadlock Detection Tool for Java Programs
TMPA-2017: Dl-Check: Dynamic Potential Deadlock Detection Tool for Java ProgramsTMPA-2017: Dl-Check: Dynamic Potential Deadlock Detection Tool for Java Programs
TMPA-2017: Dl-Check: Dynamic Potential Deadlock Detection Tool for Java Programs
 
My Name is E & Open Standards
My Name is E & Open StandardsMy Name is E & Open Standards
My Name is E & Open Standards
 
닷넷 개발자를 위한 패턴이야기
닷넷 개발자를 위한 패턴이야기닷넷 개발자를 위한 패턴이야기
닷넷 개발자를 위한 패턴이야기
 
The DE-9IM Matrix in Details using ST_Relate: In Picture and SQL
The DE-9IM Matrix in Details using ST_Relate: In Picture and SQLThe DE-9IM Matrix in Details using ST_Relate: In Picture and SQL
The DE-9IM Matrix in Details using ST_Relate: In Picture and SQL
 
Beyond the GFLOPS
Beyond the GFLOPSBeyond the GFLOPS
Beyond the GFLOPS
 
LSGAN - SIMPle(Simple Idea Meaningful Performance Level up)
LSGAN - SIMPle(Simple Idea Meaningful Performance Level up)LSGAN - SIMPle(Simple Idea Meaningful Performance Level up)
LSGAN - SIMPle(Simple Idea Meaningful Performance Level up)
 
Lossless Encryption using BITPLANE and EDGEMAP Crypt Algorithms
Lossless Encryption using BITPLANE and EDGEMAP Crypt AlgorithmsLossless Encryption using BITPLANE and EDGEMAP Crypt Algorithms
Lossless Encryption using BITPLANE and EDGEMAP Crypt Algorithms
 
TAUS USER CONFERENCE 2009, Normalization of translation memories
TAUS USER CONFERENCE 2009, Normalization of translation memoriesTAUS USER CONFERENCE 2009, Normalization of translation memories
TAUS USER CONFERENCE 2009, Normalization of translation memories
 
Getting more out of Matplotlib with GR
Getting more out of Matplotlib with GRGetting more out of Matplotlib with GR
Getting more out of Matplotlib with GR
 
Class[2][29th may] [javascript]
Class[2][29th may] [javascript]Class[2][29th may] [javascript]
Class[2][29th may] [javascript]
 
HL7 Interface
HL7 Interface HL7 Interface
HL7 Interface
 
SOLID principles
SOLID principlesSOLID principles
SOLID principles
 
Actor Concurrency
Actor ConcurrencyActor Concurrency
Actor Concurrency
 
Methods to test an e-learning Web application.
Methods to test an e-learning Web application.Methods to test an e-learning Web application.
Methods to test an e-learning Web application.
 
Go is geting Rusty
Go is geting RustyGo is geting Rusty
Go is geting Rusty
 
“I Know What You Did Before”: General Framework for Correlation Analysis of C...
“I Know What You Did Before”: General Framework for Correlation Analysis of C...“I Know What You Did Before”: General Framework for Correlation Analysis of C...
“I Know What You Did Before”: General Framework for Correlation Analysis of C...
 
JavaScriptとWebGLで取り組む
クリエイティブコーディング
JavaScriptとWebGLで取り組む
クリエイティブコーディングJavaScriptとWebGLで取り組む
クリエイティブコーディング
JavaScriptとWebGLで取り組む
クリエイティブコーディング
 
UC JT-LSL Translator
UC JT-LSL TranslatorUC JT-LSL Translator
UC JT-LSL Translator
 

Último

Mine Environment II Lab_MI10448MI__________.pptx
Mine Environment II Lab_MI10448MI__________.pptxMine Environment II Lab_MI10448MI__________.pptx
Mine Environment II Lab_MI10448MI__________.pptxRomil Mishra
 
CME 397 - SURFACE ENGINEERING - UNIT 1 FULL NOTES
CME 397 - SURFACE ENGINEERING - UNIT 1 FULL NOTESCME 397 - SURFACE ENGINEERING - UNIT 1 FULL NOTES
CME 397 - SURFACE ENGINEERING - UNIT 1 FULL NOTESkarthi keyan
 
Theory of Machine Notes / Lecture Material .pdf
Theory of Machine Notes / Lecture Material .pdfTheory of Machine Notes / Lecture Material .pdf
Theory of Machine Notes / Lecture Material .pdfShreyas Pandit
 
priority interrupt computer organization
priority interrupt computer organizationpriority interrupt computer organization
priority interrupt computer organizationchnrketan
 
STATE TRANSITION DIAGRAM in psoc subject
STATE TRANSITION DIAGRAM in psoc subjectSTATE TRANSITION DIAGRAM in psoc subject
STATE TRANSITION DIAGRAM in psoc subjectGayathriM270621
 
Immutable Image-Based Operating Systems - EW2024.pdf
Immutable Image-Based Operating Systems - EW2024.pdfImmutable Image-Based Operating Systems - EW2024.pdf
Immutable Image-Based Operating Systems - EW2024.pdfDrew Moseley
 
Robotics-Asimov's Laws, Mechanical Subsystems, Robot Kinematics, Robot Dynami...
Robotics-Asimov's Laws, Mechanical Subsystems, Robot Kinematics, Robot Dynami...Robotics-Asimov's Laws, Mechanical Subsystems, Robot Kinematics, Robot Dynami...
Robotics-Asimov's Laws, Mechanical Subsystems, Robot Kinematics, Robot Dynami...Sumanth A
 
Input Output Management in Operating System
Input Output Management in Operating SystemInput Output Management in Operating System
Input Output Management in Operating SystemRashmi Bhat
 
Python Programming for basic beginners.pptx
Python Programming for basic beginners.pptxPython Programming for basic beginners.pptx
Python Programming for basic beginners.pptxmohitesoham12
 
Javier_Fernandez_CARS_workshop_presentation.pptx
Javier_Fernandez_CARS_workshop_presentation.pptxJavier_Fernandez_CARS_workshop_presentation.pptx
Javier_Fernandez_CARS_workshop_presentation.pptxJavier Fernández Muñoz
 
DEVICE DRIVERS AND INTERRUPTS SERVICE MECHANISM.pdf
DEVICE DRIVERS AND INTERRUPTS  SERVICE MECHANISM.pdfDEVICE DRIVERS AND INTERRUPTS  SERVICE MECHANISM.pdf
DEVICE DRIVERS AND INTERRUPTS SERVICE MECHANISM.pdfAkritiPradhan2
 
High Voltage Engineering- OVER VOLTAGES IN ELECTRICAL POWER SYSTEMS
High Voltage Engineering- OVER VOLTAGES IN ELECTRICAL POWER SYSTEMSHigh Voltage Engineering- OVER VOLTAGES IN ELECTRICAL POWER SYSTEMS
High Voltage Engineering- OVER VOLTAGES IN ELECTRICAL POWER SYSTEMSsandhya757531
 
TEST CASE GENERATION GENERATION BLOCK BOX APPROACH
TEST CASE GENERATION GENERATION BLOCK BOX APPROACHTEST CASE GENERATION GENERATION BLOCK BOX APPROACH
TEST CASE GENERATION GENERATION BLOCK BOX APPROACHSneha Padhiar
 
SOFTWARE ESTIMATION COCOMO AND FP CALCULATION
SOFTWARE ESTIMATION COCOMO AND FP CALCULATIONSOFTWARE ESTIMATION COCOMO AND FP CALCULATION
SOFTWARE ESTIMATION COCOMO AND FP CALCULATIONSneha Padhiar
 
Secure Key Crypto - Tech Paper JET Tech Labs
Secure Key Crypto - Tech Paper JET Tech LabsSecure Key Crypto - Tech Paper JET Tech Labs
Secure Key Crypto - Tech Paper JET Tech Labsamber724300
 
Main Memory Management in Operating System
Main Memory Management in Operating SystemMain Memory Management in Operating System
Main Memory Management in Operating SystemRashmi Bhat
 
Curve setting (Basic Mine Surveying)_MI10412MI.pptx
Curve setting (Basic Mine Surveying)_MI10412MI.pptxCurve setting (Basic Mine Surveying)_MI10412MI.pptx
Curve setting (Basic Mine Surveying)_MI10412MI.pptxRomil Mishra
 
CS 3251 Programming in c all unit notes pdf
CS 3251 Programming in c all unit notes pdfCS 3251 Programming in c all unit notes pdf
CS 3251 Programming in c all unit notes pdfBalamuruganV28
 
Energy Awareness training ppt for manufacturing process.pptx
Energy Awareness training ppt for manufacturing process.pptxEnergy Awareness training ppt for manufacturing process.pptx
Energy Awareness training ppt for manufacturing process.pptxsiddharthjain2303
 
Gravity concentration_MI20612MI_________
Gravity concentration_MI20612MI_________Gravity concentration_MI20612MI_________
Gravity concentration_MI20612MI_________Romil Mishra
 

Último (20)

Mine Environment II Lab_MI10448MI__________.pptx
Mine Environment II Lab_MI10448MI__________.pptxMine Environment II Lab_MI10448MI__________.pptx
Mine Environment II Lab_MI10448MI__________.pptx
 
CME 397 - SURFACE ENGINEERING - UNIT 1 FULL NOTES
CME 397 - SURFACE ENGINEERING - UNIT 1 FULL NOTESCME 397 - SURFACE ENGINEERING - UNIT 1 FULL NOTES
CME 397 - SURFACE ENGINEERING - UNIT 1 FULL NOTES
 
Theory of Machine Notes / Lecture Material .pdf
Theory of Machine Notes / Lecture Material .pdfTheory of Machine Notes / Lecture Material .pdf
Theory of Machine Notes / Lecture Material .pdf
 
priority interrupt computer organization
priority interrupt computer organizationpriority interrupt computer organization
priority interrupt computer organization
 
STATE TRANSITION DIAGRAM in psoc subject
STATE TRANSITION DIAGRAM in psoc subjectSTATE TRANSITION DIAGRAM in psoc subject
STATE TRANSITION DIAGRAM in psoc subject
 
Immutable Image-Based Operating Systems - EW2024.pdf
Immutable Image-Based Operating Systems - EW2024.pdfImmutable Image-Based Operating Systems - EW2024.pdf
Immutable Image-Based Operating Systems - EW2024.pdf
 
Robotics-Asimov's Laws, Mechanical Subsystems, Robot Kinematics, Robot Dynami...
Robotics-Asimov's Laws, Mechanical Subsystems, Robot Kinematics, Robot Dynami...Robotics-Asimov's Laws, Mechanical Subsystems, Robot Kinematics, Robot Dynami...
Robotics-Asimov's Laws, Mechanical Subsystems, Robot Kinematics, Robot Dynami...
 
Input Output Management in Operating System
Input Output Management in Operating SystemInput Output Management in Operating System
Input Output Management in Operating System
 
Python Programming for basic beginners.pptx
Python Programming for basic beginners.pptxPython Programming for basic beginners.pptx
Python Programming for basic beginners.pptx
 
Javier_Fernandez_CARS_workshop_presentation.pptx
Javier_Fernandez_CARS_workshop_presentation.pptxJavier_Fernandez_CARS_workshop_presentation.pptx
Javier_Fernandez_CARS_workshop_presentation.pptx
 
DEVICE DRIVERS AND INTERRUPTS SERVICE MECHANISM.pdf
DEVICE DRIVERS AND INTERRUPTS  SERVICE MECHANISM.pdfDEVICE DRIVERS AND INTERRUPTS  SERVICE MECHANISM.pdf
DEVICE DRIVERS AND INTERRUPTS SERVICE MECHANISM.pdf
 
High Voltage Engineering- OVER VOLTAGES IN ELECTRICAL POWER SYSTEMS
High Voltage Engineering- OVER VOLTAGES IN ELECTRICAL POWER SYSTEMSHigh Voltage Engineering- OVER VOLTAGES IN ELECTRICAL POWER SYSTEMS
High Voltage Engineering- OVER VOLTAGES IN ELECTRICAL POWER SYSTEMS
 
TEST CASE GENERATION GENERATION BLOCK BOX APPROACH
TEST CASE GENERATION GENERATION BLOCK BOX APPROACHTEST CASE GENERATION GENERATION BLOCK BOX APPROACH
TEST CASE GENERATION GENERATION BLOCK BOX APPROACH
 
SOFTWARE ESTIMATION COCOMO AND FP CALCULATION
SOFTWARE ESTIMATION COCOMO AND FP CALCULATIONSOFTWARE ESTIMATION COCOMO AND FP CALCULATION
SOFTWARE ESTIMATION COCOMO AND FP CALCULATION
 
Secure Key Crypto - Tech Paper JET Tech Labs
Secure Key Crypto - Tech Paper JET Tech LabsSecure Key Crypto - Tech Paper JET Tech Labs
Secure Key Crypto - Tech Paper JET Tech Labs
 
Main Memory Management in Operating System
Main Memory Management in Operating SystemMain Memory Management in Operating System
Main Memory Management in Operating System
 
Curve setting (Basic Mine Surveying)_MI10412MI.pptx
Curve setting (Basic Mine Surveying)_MI10412MI.pptxCurve setting (Basic Mine Surveying)_MI10412MI.pptx
Curve setting (Basic Mine Surveying)_MI10412MI.pptx
 
CS 3251 Programming in c all unit notes pdf
CS 3251 Programming in c all unit notes pdfCS 3251 Programming in c all unit notes pdf
CS 3251 Programming in c all unit notes pdf
 
Energy Awareness training ppt for manufacturing process.pptx
Energy Awareness training ppt for manufacturing process.pptxEnergy Awareness training ppt for manufacturing process.pptx
Energy Awareness training ppt for manufacturing process.pptx
 
Gravity concentration_MI20612MI_________
Gravity concentration_MI20612MI_________Gravity concentration_MI20612MI_________
Gravity concentration_MI20612MI_________
 

Dklopfenstein Designcon08

  • 1. How to quickly create complicated message sequence charts automatically without spending money on software. Debra Klopfenstein, SGI dklopfenstein@alum.rpi.edu 2/5/2008 Debra Klopfenstein, © 2008 SGI. All rights reserved.
  • 2. A Simple Story 2/5/2008 Debra Klopfenstein, © 2008 SGI. All rights reserved.
  • 3. Gets Complicated Quickly… 2/5/2008 Debra Klopfenstein, © 2008 SGI. All rights reserved.
  • 4. Event Order is Added… 2/5/2008 Debra Klopfenstein, © 2008 SGI. All rights reserved.
  • 5. Hundreds of Thousands of Stories! • Goal is Speed, Accuracy (Cheap): –Understand –Explain –Document –Debug 2/5/2008 Debra Klopfenstein, © 2008 SGI. All rights reserved.
  • 6. A Picture is… • A Picture is Helpful: – Can Not Forget Important Events – Less Confusing than Words Alone – More Concise than Words Alone – Good ‘Birds-Eye-View’ • But What a Pain: – Time-Consuming – Error-Prone 2/5/2008 Debra Klopfenstein, © 2008 SGI. All rights reserved.
  • 7. Agenda • How you can implement Automatic Picture Generation • Real-Life Limitations • Other Approaches 2/5/2008 Debra Klopfenstein, © 2008 SGI. All rights reserved.
  • 8. Three Views (same info) • Diagram of Event Flow among Logic Blocks • Diagram in Message Sequence Chart Format • Text Log file 2/5/2008 Debra Klopfenstein, © 2008 SGI. All rights reserved.
  • 9. Event Flow among Logic Blocks 2/5/2008 Debra Klopfenstein, © 2008 SGI. All rights reserved.
  • 10. Message Sequence Chart Format 2/5/2008 Debra Klopfenstein, © 2008 SGI. All rights reserved.
  • 11. Simulation Log File P1 OMSG ReadExcl A=0x420500 dst=M0 req=P1 M0 IMSG ReadExcl A=0x420500 dst=M0 req=P1 M0 DirState: A=0x420500 E{P0}->BUSY{P1} M0 OMSG InterExcl A=0x420500 dst=P0 req=P1 M0 OMSG ExclSpec+D A=0x420500 dst=P0 req=P1 P0 IMSG InterExcl A=0x420500 dst=P0 req=P1 P0 CchState: A=0x420500 E->I P0 OMSG Purge dst=M0 req=P1 from=P0 P0 OMSG ExclAck+D dst=P1 home=M0 P1 IMSG ExclSpec+D A=0x420500 dst=P0 req=P1 2/5/2008 Debra Klopfenstein, © 2008 SGI. All rights reserved.
  • 12. Simulation Log File P1 OMSG ReadExcl A=0x420500 dst=M0 req=P1 M0 IMSG ReadExcl A=0x420500 dst=M0 req=P1 M0 DirState: A=0x420500 E{P0}->BUSY{P1} M0 OMSG InterExcl A=0x420500 dst=P0 req=P1 M0 OMSG ExclSpec+D A=0x420500 dst=P0 req=P1 P0 IMSG InterExcl A=0x420500 dst=P0 req=P1 P0 CchState: A=0x420500 E->I P0 OMSG Purge dst=M0 req=P1 from=P0 P0 OMSG ExclAck+D dst=P1 home=M0 P1 IMSG ExclSpec+D A=0x420500 dst=P0 req=P1 2/5/2008 Debra Klopfenstein, © 2008 SGI. All rights reserved.
  • 13. Message Sequence Chart Coordinates 2/5/2008 Debra Klopfenstein, © 2008 SGI. All rights reserved.
  • 14. The first two events in the log file P1 OMSG ReadExcl A=0x420500 dst=M0 req=P1 M0 IMSG ReadExcl A=0x420500 dst=M0 req=P1 2/5/2008 Debra Klopfenstein, © 2008 SGI. All rights reserved.
  • 15. The first two events in the log file Y=1 P1(X=1) OMSG ReadExcl … Y=2 M0(X=2) IMSG ReadExcl … 2/5/2008 Debra Klopfenstein, © 2008 SGI. All rights reserved.
  • 16. Log File with Coordinates Y=0 P1(X=1) OMSG ReadExcl Y=1 M0(X=2) IMSG ReadExcl Y=2 M0(X=2) DirState: E{P0}->BUSY{P1} Y=3 M0(X=2) OMSG InterExcl Y=4 M0(X=2) OMSG ExclSpec+D Y=5 P0(X=0) IMSG InterExcl Y=6 P0(X=0) CchState: E->I Y=7 P0(X=0) OMSG Purge Y=8 P0(X=0) OMSG ExclAck+D Y=9 P1(X=1) IMSG ExclSpec+D 2/5/2008 Debra Klopfenstein, © 2008 SGI. All rights reserved.
  • 17. Message Sequence Chart Format 2/5/2008 Debra Klopfenstein, © 2008 SGI. All rights reserved.
  • 18. Which Diagram is Easiest to Generate Automatically? • Simple Graphical Objects • Simple and predictable object placement 2/5/2008 Debra Klopfenstein, © 2008 SGI. All rights reserved.
  • 19. Contains Rectangles 2/5/2008 Debra Klopfenstein, © 2008 SGI. All rights reserved.
  • 20. Contains Straight Lines 2/5/2008 Debra Klopfenstein, © 2008 SGI. All rights reserved.
  • 21. Contains Bent Lines 2/5/2008 Debra Klopfenstein, © 2008 SGI. All rights reserved.
  • 22. Contains Text 2/5/2008 Debra Klopfenstein, © 2008 SGI. All rights reserved.
  • 23. Image Object Placement 2/5/2008 Debra Klopfenstein, © 2008 SGI. All rights reserved.
  • 24. Message Arrow Placement 2/5/2008 Debra Klopfenstein, © 2008 SGI. All rights reserved.
  • 25. Message Sequence Chart • Two Object Types – Straight Lines – Text • Simple Placement – X is logic blocks – Y is event order 2/5/2008 Debra Klopfenstein, © 2008 SGI. All rights reserved.
  • 26. Diagram Comparison Logic Diagram Message Sequence Chart • Many Object Types • Two Object Types Straight Lines – Straight Lines – Text – Text – Rectangles of different sizes – Bent Lines – • Placement • Placement – Complex – Simple – Has Dependencies – Predictable – Hard-to-Follow – Easy-to-Follow 2/5/2008 Debra Klopfenstein, © 2008 SGI. All rights reserved.
  • 27. Script Overview 1. Inputs and Outputs 2. Innards 2/5/2008 Debra Klopfenstein, © 2008 SGI. All rights reserved.
  • 28. Log2img Inputs and Outputs 2/5/2008 Debra Klopfenstein, © 2008 SGI. All rights reserved.
  • 29. Multiple Graphics Outputs. How? 2/5/2008 Debra Klopfenstein, © 2008 SGI. All rights reserved.
  • 30. Input to convert 2/5/2008 Debra Klopfenstein, © 2008 SGI. All rights reserved.
  • 31. Graphic Format Requirements • Easy for an ASIC Engineer to write: –Origin in upper left –Easy to create lines –Easy to create text –Graphics file contains text, not binary 2/5/2008 Debra Klopfenstein, © 2008 SGI. All rights reserved.
  • 32. Input to convert: FIG Format 2/5/2008 Debra Klopfenstein, © 2008 SGI. All rights reserved.
  • 33. FIG Format: Text Log(X,Y) # ReadExcl Text # etc.. X Y Text # ----- ---- ---- -------- 4 (...) 1 0 ReadExcl 2/5/2008 Debra Klopfenstein, © 2008 SGI. All rights reserved.
  • 34. FIG Format: Text Fig(X,Y) # ReadExcl Text # etc.. X Y Text # ----- ---- ---- -------- 4 (...) 1000 1800 ReadExcl 2/5/2008 Debra Klopfenstein, © 2008 SGI. All rights reserved.
  • 35. FIG Format: Text Angle # ReadExcl Text # .. AngleRadians X Y Text # -- -------- -- ---- ---- -------- 4 .. -0.16514 .. 1000 1800 ReadExcl 2/5/2008 Debra Klopfenstein, © 2008 SGI. All rights reserved.
  • 36. FIG Format: Text Angle # .. AngleRadians X Y Text # -- -------- -- ---- ---- -------- 4 .. -0.16514 .. 1000 1800 ReadExcl 2/5/2008 Debra Klopfenstein, © 2008 SGI. All rights reserved.
  • 37. SOH-CAH-TOA 2/5/2008 Debra Klopfenstein, © 2008 SGI. All rights reserved.
  • 38. SOH-CAH-TOA 2/5/2008 Debra Klopfenstein, © 2008 SGI. All rights reserved.
  • 39. FIG Format for Lines # ReadExcl Arrow 2 (...) # Line Info (width, color, etc) 1 1 1.00 100.00 120.00 # Arrow Info 1000 1800 2500 2050 #(X0,Y0),(X1,Y1) 2/5/2008 Debra Klopfenstein, © 2008 SGI. All rights reserved.
  • 40. 1st Script Section 2/5/2008 Debra Klopfenstein, © 2008 SGI. All rights reserved.
  • 41. Grouping Image Objects 2/5/2008 Debra Klopfenstein, © 2008 SGI. All rights reserved.
  • 42. Two kinds of Image Objects • Message Image Objects • Text Image Objects 2/5/2008 Debra Klopfenstein, © 2008 SGI. All rights reserved.
  • 43. Msg Image Object 0 (1st Section) P1 OMSG ReadExcl A=0x420500 dst=M0 req=P1 M0 IMSG ReadExcl A=0x420500 dst=M0 req=P1 M0 DirState: A=0x420500 E{P0}->BUSY{P1} M0 OMSG InterExcl A=0x420500 dst=P0 req=P1 M0 OMSG ExclSpec+D A=0x420500 dst=P0 req=P1 P0 IMSG InterExcl A=0x420500 dst=P0 req=P1 2/5/2008 Debra Klopfenstein, © 2008 SGI. All rights reserved.
  • 44. Msg Image Object 0 (2nd Section) P1 OMSG ReadExcl A=0x420500 dst=M0 req=P1 M0 IMSG ReadExcl A=0x420500 dst=M0 req=P1 M0 DirState: A=0x420500 E{P0}->BUSY{P1} M0 OMSG InterExcl A=0x420500 dst=P0 req=P1 M0 OMSG ExclSpec+D A=0x420500 dst=P0 req=P1 P0 IMSG InterExcl A=0x420500 dst=P0 req=P1 2/5/2008 Debra Klopfenstein, © 2008 SGI. All rights reserved.
  • 45. How to Match Msg Image Sections P1 OMSG ReadExcl A=0x420500 dst=M0 req=P1 M0 IMSG ReadExcl A=0x420500 dst=M0 req=P1 M0 DirState: A=0x420500 E{P0}->BUSY{P1} M0 OMSG InterExcl A=0x420500 dst=P0 req=P1 M0 OMSG ExclSpec+D A=0x420500 dst=P0 req=P1 P0 IMSG InterExcl A=0x420500 dst=P0 req=P1 2/5/2008 Debra Klopfenstein, © 2008 SGI. All rights reserved.
  • 46. Text Image Object 1 P1 OMSG ReadExcl A=0x420500 dst=M0 req=P1 M0 IMSG ReadExcl A=0x420500 dst=M0 req=P1 M0 DirState: A=0x420500 E{P0}->BUSY{P1} M0 OMSG InterExcl A=0x420500 dst=P0 req=P1 M0 OMSG ExclSpec+D A=0x420500 dst=P0 req=P1 P0 IMSG InterExcl A=0x420500 dst=P0 req=P1 2/5/2008 Debra Klopfenstein, © 2008 SGI. All rights reserved.
  • 47. Image Object 2 (1st section) P1 OMSG ReadExcl A=0x420500 dst=M0 req=P1 M0 IMSG ReadExcl A=0x420500 dst=M0 req=P1 M0 DirState: A=0x420500 E{P0}->BUSY{P1} M0 OMSG InterExcl A=0x420500 dst=P0 req=P1 M0 OMSG ExclSpec+D A=0x420500 dst=P0 req=P1 P0 IMSG InterExcl A=0x420500 dst=P0 req=P1 2/5/2008 Debra Klopfenstein, © 2008 SGI. All rights reserved.
  • 48. How to Match Msg Image Sections P1 OMSG ReadExcl A=0x420500 dst=M0 req=P1 M0 IMSG ReadExcl A=0x420500 dst=M0 req=P1 M0 DirState: A=0x420500 E{P0}->BUSY{P1} M0 OMSG InterExcl A=0x420500 dst=P0 req=P1 M0 OMSG ExclSpec+D A=0x420500 dst=P0 req=P1 P0 IMSG InterExcl A=0x420500 dst=P0 req=P1 2/5/2008 Debra Klopfenstein, © 2008 SGI. All rights reserved.
  • 49. Image Object Array … M0 OMSG InterExcl A=0x420500 dst=P0 req=P1 M0 OMSG ExclSpec+D A=0x420500 dst=P0 req=P1 … 2/5/2008 Debra Klopfenstein, © 2008 SGI. All rights reserved.
  • 50. ImageObj Array of Hashes idx Printed Text X0 Y0 X1 Y1 0 ReadExcl P1 0 M0 1 1 E{P0}->BUSY{P1} M0 2 2 InterExcl M0 3 P0 5 3 ExclSpec+D M0 4 P1 9 4 E->I P0 6 5 Purge P0 7 M0 12 6 ExclAck P0 8 P1 10 7 I->E P1 11 8 Busy{P1}->E{P1} M0 13 2/5/2008 Debra Klopfenstein, © 2008 SGI. All rights reserved.
  • 51. Print Obj[0] 2/5/2008 Debra Klopfenstein, © 2008 SGI. All rights reserved.
  • 52. Print Obj[1] 2/5/2008 Debra Klopfenstein, © 2008 SGI. All rights reserved.
  • 53. Print Obj[2] 2/5/2008 Debra Klopfenstein, © 2008 SGI. All rights reserved.
  • 54. Print Obj[3] 2/5/2008 Debra Klopfenstein, © 2008 SGI. All rights reserved.
  • 55. Print Obj[4] 2/5/2008 Debra Klopfenstein, © 2008 SGI. All rights reserved.
  • 56. Print Obj[5] 2/5/2008 Debra Klopfenstein, © 2008 SGI. All rights reserved.
  • 57. Print Obj[6] 2/5/2008 Debra Klopfenstein, © 2008 SGI. All rights reserved.
  • 58. Print Obj[7] 2/5/2008 Debra Klopfenstein, © 2008 SGI. All rights reserved.
  • 59. Print Obj[8] 2/5/2008 Debra Klopfenstein, © 2008 SGI. All rights reserved.
  • 60. 1st Script Section 2/5/2008 Debra Klopfenstein, © 2008 SGI. All rights reserved.
  • 61. From Text to Diagrams: FAST ACCURATE CHEAP Diagrams Text o Verbose Simple P1 OMSG ReadExcl A=0x420500 dst=M0 req=P1 M0 IMSG ReadExcl A=0x420500 dst=M0 req=P1 o Birds-Eye View: Birds-Eye-View: –S L O W FAST o Hard-to-Read Easy-to-read 2/5/2008 Debra Klopfenstein, © 2008 SGI. All rights reserved.
  • 62. Limitations • When Message Sequence Charts become: TOO BIG • Alternate Visualization Techniques – PacketViz – Colored Message Log sub-sections 2/5/2008 Debra Klopfenstein, © 2008 SGI. All rights reserved.
  • 63. When MSCs Become Too Big 2/5/2008 Debra Klopfenstein, © 2008 SGI. All rights reserved.
  • 64. PacketViz From Wikipedia… 2/5/2008 Debra Klopfenstein, © 2008 SGI. All rights reserved.
  • 65. Script Flow for PacketViz Option 2/5/2008 Debra Klopfenstein, © 2008 SGI. All rights reserved.
  • 66. Script Flow for Only PacketViz 2/5/2008 Debra Klopfenstein, © 2008 SGI. All rights reserved.
  • 67. Another Visualization Technique 2/5/2008 Debra Klopfenstein, © 2008 SGI. All rights reserved.
  • 68. Conclusion • Introduction to creating your own log2img script • Real-Life Limitations • Other Approaches 2/5/2008 Debra Klopfenstein, © 2008 SGI. All rights reserved.
  • 69. Thank You Ramesh Satyanarayana Marla Robinson • • Trevor Williams Rex Klopfenstein • • Christine Macneil Maryann Klopfenstein • • Karen Wilk Alan Klopfenstein • • Beth Brooks Fred Eisner • • Mike Woodacre Paul Adams • • Gerry Epstein Alan Sneider • • 2/5/2008 Debra Klopfenstein, © 2008 SGI. All rights reserved.