Visualization Kenny Inthirath Visual Techniques Rubric Reviewing a Suitable Technique to Use Scope and Purpose What types of models can be represented? Architectural or Effect Visualization? Basic Type What is the Basic Type of Visualization? Graphical, Textual, Hybrid? Rubric Cont. Depiction How is the model depicted? Basic Constituents of Depiction? Interaction What interaction is Possible? The Capabilities of the Interface? Fidelity How Faithful is the Visualization to the Model? Rubric Cont. Consistency Consistency Across Viewpoints? Consistency Across Interaction? Comprehensibility Ease of Comprehension? How do Visuals Optimize Information? Making Use of Existing Comprehension? Rubric Cont. Dynamism Use of Dynamic Elements View Coordination Extent of Multiple Views Allowed? Strategies to Coordinate Multiple Views? Aesthetics How Aesthetically Pleasing? Extensibility Ease of Reuse/Modification? Textual Visualizations Visualization of text/code Very common Multitude of choices Advance Techniques Code folding Templates Autocomplete Think of text/code editors Textual Visualization Examples *Code Folding, Templates Text Visualization Examples *Same code, but does not offer code folding Rubric Example Scope and Purpose Depicting and editing models that can be expressed as structured text Basic Type Textual Fidelity Depict entire model including all details Etc. Informal Graphical Editor Diagram Editors Strength of Visualization Straightforward Aesthetically Pleasing Entire overview visible Limitation of space Easy User Interface Point and Click Informal Graphical Editor Example *PowerPoint is excellent for its ease of use Informal Graphical Editor Example *Microsoft Visio 2010 Rubric Example Interaction Point and Click Dragging Consistency User is responsible for development/representation Dynamism Limited animations UML Unified Modeling Language Concepts graphed to symbols Tools prescribe how diagrams should look Up to user to how to create diagrams Differences in UML Software User Interface Tools provided XMI Visualization method through Text UML Example *ArgoUML UML Example *XMI Example Rubric Example Consistency Consistent Symbols across diagram types Comprehensibility Interpreted at general level with no prior knowledge Proper interpretation requires knowledge of symbols View Coordination Diagrams can represent multiple views No standard for linking multiple views Rapide Effect Visualization Depicts effects rather than decisions Simulation Models interactions between components Runs in parallel Results are not deterministic Can generate different outcomes Outcomes visualized as graphs Rapide Eaxmple *Rapide Rubric Example Depiction Models in rigorous text format Effect Visualization are directed graphs/nodes Dynamism No support Extensibility Difficult to extend Relative black box LTSA Labeled Transition State Analyzer Analyze and visualize concurrent systems Model finite state machines Graphically represented by Nodes-and-Arrows Employ dynamic visualization Show animations of different states/changes During real-time simulation LTSA Example *LTSA Tool Rubric Example Basic Type Multiple Textual and Graphical Model Interaction Integrated set of tools allow user to manipulate both text and graphical visualization Consistency Limited vocabulary and symbols ensure consistency Extensibility Domain specific visualizations can be added as plug-ins xADL 2.0 XML Schemas Canonical Textual Visualization Most users never see the text Use of graphical tools instead Graphical tools can range in visualization Techniques xADLite Programming-Like Language ArchEdit Semigraphical Archipelago Graphical Editor ArchEdit Archipelago MTAT Message Tracing and Analysis Tool Additional visualization support for xADL 2.0 Dynamic visualizations of sending/receiving events Provides unified visual of Architecture Design Implementation Events are sent in a real system MTAT Example Rubric Example Scope and Purpose Multiple coordinate textual, graphical, effect visualization of xADL 2.0 models Depiction Textual visualizations as XML or xADLITE Graphical visualization as trees and text (ArchEdit) Fidelity Display entire model Various graphical visuals elide some detail Takeaway Visualizations != Underlying Model Creating distinction between a model and its visualization Different ways of representing the same model Strengths Weaknesses Understanding, exchanging, communicating about design decisions easier Internal and External