visualization by: simon luangsisombath. canonical visualization architectural modeling notations...

16
Visualization By: Simon Luangsisombath

Upload: gavin-banks

Post on 24-Dec-2015

214 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: Visualization By: Simon Luangsisombath. Canonical Visualization  Architectural modeling notations are ways to organize information  Canonical notation

Visualization By: Simon Luangsisombath

Page 2: Visualization By: Simon Luangsisombath. Canonical Visualization  Architectural modeling notations are ways to organize information  Canonical notation

Canonical Visualization

Architectural modeling notations are ways to organize information

Canonical notation – every notation has at least one visualization that is directly and specifically associated with it

A common pitfall is to associate an architecture modeling notation as only with canonical notation or view a notation and its canonical notation as the same thing

Notation is a way organizing abstract information

Visualization dictates how information is depicted and interacted with

Visuals are not optimal for all uses so notations which there exists multiple visualizations are generally preferred than single canonical visualizations

Page 3: Visualization By: Simon Luangsisombath. Canonical Visualization  Architectural modeling notations are ways to organize information  Canonical notation

Textual Visualizations

They depict architectures using text files

Generally conform to a particular syntactic format such as .java or .c

Several advantages

Depict entirety of an architecture in a particular notation in a single file

Many technologies have been researched for parsing, processing and editing structure text

When a textual syntax is defined many tools are available to generate library's that can parse and check syntax of text documents in that language

Disadvantage

It is not understood well with graph like structures

Text editors are limited to showing a screen full of text with few options of organization

Page 4: Visualization By: Simon Luangsisombath. Canonical Visualization  Architectural modeling notations are ways to organize information  Canonical notation

 Textual depictions for an architecture in xADL and xADLite.

Page 5: Visualization By: Simon Luangsisombath. Canonical Visualization  Architectural modeling notations are ways to organize information  Canonical notation

Graphical Visualizations

Depicted as architectures using graphical symbols

Generally conform to a syntax but my also be free form

They give stakeholders access to information about architecture that text does not

Symbols, colors and other visual decorations can easily be distinguished

They can use special relationships to express relationships among elements

Disadvantage

Cost of building tools to support them

More popular tools lack understanding of architectural semantics and is difficult or impossible to add appropriate semantics and interactions to a wider software engineering environment

Page 6: Visualization By: Simon Luangsisombath. Canonical Visualization  Architectural modeling notations are ways to organize information  Canonical notation
Page 7: Visualization By: Simon Luangsisombath. Canonical Visualization  Architectural modeling notations are ways to organize information  Canonical notation

Hybrid Visualizations

Many visualizations blur between graphical and textual

Some can be composites of many different visualizations

EX: UML composite structure diagram is primarily graphical visualization used to contain other UML diagrams

Composite visualizations can be good for displaying relationships between different aspects of the same architecture

But they can be quickly become complex and confusing as depictions and interaction mechanisms are combined

Strategies such as drill down interaction can mitigate complexity

Page 8: Visualization By: Simon Luangsisombath. Canonical Visualization  Architectural modeling notations are ways to organize information  Canonical notation
Page 9: Visualization By: Simon Luangsisombath. Canonical Visualization  Architectural modeling notations are ways to organize information  Canonical notation

Relationship between Visualization and views

Effective use of view and viewpoints help consider different subsets of design decisions in an architecture

Visualization for a viewpoint defines depiction and interaction mechanisms only for the kinds of design decisions included in viewpoint

Associate visualization with viewpoints rather than views

A visualization can be used to visualize many architectures

Page 10: Visualization By: Simon Luangsisombath. Canonical Visualization  Architectural modeling notations are ways to organize information  Canonical notation

Various UML diagram types.

Page 11: Visualization By: Simon Luangsisombath. Canonical Visualization  Architectural modeling notations are ways to organize information  Canonical notation

Evaluating Visualizations

Fidelity is a measure of how faithfully a visualization represents a underlying model

Consistency is a measure of how well a visualization uses similar depictions and interaction mechanism for similar concepts

Comprehensibility is a measure of how easy it is for stakeholders to understand and use a visualization

Dynamism is a measure of how well a visualization supports models that change over time

View coordination is how well one visualization is coordinated with others

Aesthetics is a measure of how pleasing a visualization is to its users

Extensibility is a measure of how easy it is to modify a visualization to take on new capabilities, for either depiction or interaction

Page 12: Visualization By: Simon Luangsisombath. Canonical Visualization  Architectural modeling notations are ways to organize information  Canonical notation

Constructing a Visualization

Borrowing Elements from Similar Visualizations

Be Consistent among Visualizations

Give Meaning to Each Visual Aspect of Elements

Document the Meaning of Visualization

Balance Traditional and Innovative Interfaces

Page 13: Visualization By: Simon Luangsisombath. Canonical Visualization  Architectural modeling notations are ways to organize information  Canonical notation

Coordinating Visualizations

It is key that visualizations must coordinate with each other

Four general synchronization strategies

Peer to Peer

Visualization maintain their own copies of information, know about each other explicitly and notify change

This strategy is more suitable for small fixed number of visualizations chosen in advance

Master-slave

One Visualization is responsible for interacting with the model repository and serves as master

This works when one visualization is auxiliary to another

Pull-Based

Each Visualization repeatedly queries a shared model for changes and updates itself

Pull based strategies can be used when the model repository is entirely passive

The disadvantage is it may display out of date information until it performs a pull

Pushed based

Visualizations are notified and consequently update themselves whenever model changes

Page 14: Visualization By: Simon Luangsisombath. Canonical Visualization  Architectural modeling notations are ways to organize information  Canonical notation

Multiple strategies for coordinating visualizations of the same information: (a) peer-to-peer, (b) master-slave, (c) pull, and (d) push.

Page 15: Visualization By: Simon Luangsisombath. Canonical Visualization  Architectural modeling notations are ways to organize information  Canonical notation

Beyond Design: Using Visualization dynamically

Effective visualization is a visualization that does not represent architectural design decisions directly, but instead represents effect of architectural design decisions

Page 16: Visualization By: Simon Luangsisombath. Canonical Visualization  Architectural modeling notations are ways to organize information  Canonical notation

Figure 7-7. Visualization combining elements from xADL and UML.

 Generating effect visualizations.