Visualization Kenny Inthirath
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? Visual Techniques Rubric
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? Rubric Cont.
Visualization of text/code Very common Multitude of choices Advance Techniques Code folding Templates Autocomplete Think of text/code editors Textual Visualizations
Textual Visualization Examples *Code Folding, Templates
Text Visualization Examples *Same code, but does not offer code folding
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. Rubric Example
Diagram Editors Strength of Visualization Straightforward Aesthetically Pleasing Entire overview visible Limitation of space Easy User Interface Point and Click Informal Graphical Editor
Informal Graphical Editor Example *PowerPoint is excellent for its ease of use
Informal Graphical Editor Example *Microsoft Visio 2010
Interaction Point and Click Dragging Consistency User is responsible for development/representation Dynamism Limited animations Rubric Example
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
UML Example *ArgoUML
UML Example *XMI 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 Rubric Example
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
Rapide Eaxmple *Rapide
Depiction Models in rigorous text format Effect Visualization are directed graphs/nodes Dynamism No support Extensibility Difficult to extend Relative black box Rubric Example
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
LTSA Example *LTSA Tool
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 Rubric Example
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 xADL 2.0
ArchEdit
Archipelago
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
MTAT 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 Rubric Example
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 Takeaway