Agenericandintegratedsoftwaresupportforthe ...€¦ · Vision Metricvisualization(snapshot)...
Transcript of Agenericandintegratedsoftwaresupportforthe ...€¦ · Vision Metricvisualization(snapshot)...
A generic and integrated software support for thevisualization of metrics in the context of Enterprise
Architecture ManagementFinal presentation
Michael Schätzlein
Software Engineering for Business Information Systems (sebis)Technische Universität München
May 27th, 2014
2014-05-27 – Schätzlein – Metric Visualization 1/ 25
Motivation
Metrics in Tricia:
Application continuity plan availabilityA measure of how completely IT continuity plans for business criticalapplications have been drawn & tested up for the IT’s application portfolio.
Mxl expression
let criticalApplications =find(’Business Application’).where(’is critical’) incriticalApplications.ratio(’covered by’ <> null)
Interpretationproblematic if < 60%normal if between 60% - 80%good if > 80%
2014-05-27 – Schätzlein – Metric Visualization Motivation 2/ 25
Vision
Metric visualization (snapshot)
Application continuity plan availability
0 25 50 75 100 %
2014-05-27 – Schätzlein – Metric Visualization Motivation 3/ 25
Vision
Metric visualization (over time)
Date
Availab
ilit
y (
%)
Application continuity plan availability
Application continuity plan availability
Jan '14 Mar '14 May '14 Jul '14 Sep '14 Nov '14 Jan '150
10
20
30
40
50
60
70
80
90
100
Highcharts.com
2014-05-27 – Schätzlein – Metric Visualization Motivation 4/ 25
Vision
Metric visualization (combined)
Date
Metr
ic v
alu
e (
%)
Application continuity plan availabilityCompared with backuped key roles
Application continuity plan availability Backuped key roles
Jan '14 Apr '14 Jul '14 Oct '14 Jan '150
10
20
30
40
50
60
70
80
90
100
Highcharts.com
2014-05-27 – Schätzlein – Metric Visualization Motivation 5/ 25
Outline
1 Research Questions
2 Results of the Literature Review
3 Selected Implementation Aspects
4 Conclusion & Outlook
5 Live Demo
2014-05-27 – Schätzlein – Metric Visualization Outline 6/ 25
Research questions
RQ1: What are recommended visualizations for metrics inliterature?
RQ2: What type of visualizations are recommended for metrics inthe domain of EAM?
RQ3: What are suitable web-based visualization libraries to supportthe visualization of metrics in the domain of EAM?
RQ4: What is a suitable prototypical implementation of acorresponding visualization extension of Tricia?
2014-05-27 – Schätzlein – Metric Visualization Research Questions 7/ 25
Findings
Many authors use metrics and propose visualizations.None of them states how to use visualizations to properlyrepresent metrics.Visualization of metrics in the domain of EAM is sparselyresearched (cf. Lankes, [2008]).Practitioners and researchers contradict each other.
2014-05-27 – Schätzlein – Metric Visualization Results of the Literature Review 8/ 25
Gap between practitioners and researchers
PractitionersMake heavy use of gaugesand pie chartsSeldom care aboutconsistent coloration orcomparabilityEmploy visualizationsdistorting data
ResearchersPrefer line charts and barchartsReject pie charts, gauges,and kiviat chartsFavour monochrome,minimalistic visualizationsCare about comparability ofvisualizationsDemand visualizationswithout data distortion
2014-05-27 – Schätzlein – Metric Visualization Results of the Literature Review 9/ 25
Requirements for the prototype
1 Support the visualization of all metrics from the MetricCatalog by all types of recommended visualizations.
2 The visualizations operate on the results from related TxLexpressions.
3 Integration of the visualization prototype in Tricia.4 The prototype must enable users to define visualizations for
their metrics.
2014-05-27 – Schätzlein – Metric Visualization Results of the Literature Review 10/ 25
Visualization types (RQ1) I
Line chart
Date
Availab
ilit
y (
%)
Application continuity plan availability
Application continuity plan availability
Jan '14 Mar '14 May '14 Jul '14 Sep '14 Nov '14 Jan '150
10
20
30
40
50
60
70
80
90
100
Highcharts.com
2014-05-27 – Schätzlein – Metric Visualization Results of the Literature Review 11/ 25
Visualization types (RQ1) II
Area chart
Date
Availab
ilit
y (
%)
Application continuity plan availability
Application continuity plan availability
Jan '14 Mar '14 May '14 Jul '14 Sep '14 Nov '14 Jan '150
10
20
30
40
50
60
70
80
90
100
Highcharts.com
2014-05-27 – Schätzlein – Metric Visualization Results of the Literature Review 12/ 25
Visualization types (RQ1) III
Column chart
Severity level
Avera
ge d
ura
tio
n (
h)
Incident duration
Application continuity plan availability
low middle high0
10
20
30
40
Highcharts.com
2014-05-27 – Schätzlein – Metric Visualization Results of the Literature Review 13/ 25
Visualization types (RQ1) IV
Bar chartS
everi
ty level
Average duration (h)
Incident duration
Application continuity plan availability
low
middle
high
0 10 20 30 40
Highcharts.com
2014-05-27 – Schätzlein – Metric Visualization Results of the Literature Review 14/ 25
Visualization types (RQ1) V
Pie chart
Incident duration distributionBased on the average incident duration
low: 20.0 %
middle: 30.0 %
high: 50.0 %
Highcharts.com
2014-05-27 – Schätzlein – Metric Visualization Results of the Literature Review 15/ 25
Visualization types (RQ1) VI
Kiviat chart
Spiderweb / Kiviat
data series I data series II data series III
criteria A
criteria B
criteria C
criteria D
criteria E
criteria F
0
25
50
75
100
Highcharts.com
2014-05-27 – Schätzlein – Metric Visualization Results of the Literature Review 16/ 25
Visualization types (RQ1) VII
Bullet chart
Application continuity plan availability
0 25 50 75 100 %
2014-05-27 – Schätzlein – Metric Visualization Results of the Literature Review 17/ 25
Recommended visualization types (RQ2)
Recommendations based on the Metric Catalog
Metric result type PerspectiveSnapshot Over time
monetary value bullet chart line / column chartmultiple values column chart line / column chartnumber bullet chart line / column chartpercentage bullet chart line / column chart
2014-05-27 – Schätzlein – Metric Visualization Results of the Literature Review 18/ 25
Visualization engines (RQ3)
RGraph g.Raphaël NVD3 Highcharts
Line chart Area chart # Column chart Bar chart Pie chart Kiviat chart # # Bullet chart # # G#Dynamic Documentation # Interactivity # G#
2014-05-27 – Schätzlein – Metric Visualization Selected Implementation Aspects 19/ 25
Foundation
Visualization terminology
Date
Availab
ilit
y (
%)
Application continuity plan availabilityvalue over time
40%
55%
75%
60%
85%
Application continuity plan availability
Jan '14 Mar '14 May '14 Jul '14 Sep '14 Nov '14 Jan '1
Data Label
Legend
Navigator
10
20
30
40
50
60
70
80
90
100
Jan '14 May '14 Sep '14
Highcharts.com
X-Axis Title
Y-Axis Title TitleSubtitleY-Axis Type
X-Axis Type
2014-05-27 – Schätzlein – Metric Visualization Selected Implementation Aspects 20/ 25
TxL expressions
Allowed types
expression :: String → Number (e.g. column chart)expression :: Date → Number (e.g. line chart)expression :: Number (e.g. bullet chart)
Mxl expression (Number)
let criticalApplications =find(’Business Application’).where(’is critical’) incriticalApplications.ratio(’covered by’ <> null)
Wrapper expression (Date → Number)
applicationContinuityPlanAvailability() @ date * 100
2014-05-27 – Schätzlein – Metric Visualization Selected Implementation Aspects 21/ 25
Visualization Template
Empty template
{"properties": {},"configuration": {},"highcharts_config": {},"highcharts_expert": {}
}
2014-05-27 – Schätzlein – Metric Visualization Selected Implementation Aspects 22/ 25
Conclusion
Metric visualization is a diverse subject.We drew our own conclusions and derived a set ofrecommended metric visualizations from literature.The prototypical extension of Tricia can be used to visualize allmetrics of the catalog.Missing TxL features (at the time of writing) prevent thevisualization of values over time.
2014-05-27 – Schätzlein – Metric Visualization Conclusion & Outlook 23/ 25
Future Research
Visualization of historical dataDynamic configuration dialogUsability analysisGraphical drill-down on visualizations
2014-05-27 – Schätzlein – Metric Visualization Conclusion & Outlook 24/ 25
DEMO
2014-05-27 – Schätzlein – Metric Visualization Live Demo 25/ 25
Traffic light
Application continuity plan availability
Bullet chart
Application continuity plan availability
0 25 50 75 100 %
2014-05-27 – Schätzlein – Metric Visualization Backup 1/ 9
Gauge
availability in %
80
Application Continuity Plan Availability
0
1020
30
4050
60
7080
90
100
2014-05-27 – Schätzlein – Metric Visualization Backup 2/ 9
Visualization Template I
Template properties (line chart)
1 "properties": {"name": "Line Chart", "image": "line_chart.png",2 "x_axis_types": ["datetime"],3 "y_axis_types": ["linear", "logarithmic"],4 "date_intervals": ["daily", "weekly", "monthly", "quarterly", "
annually"],5 "no_of_metrics": "multiple",6 "title_editable": true,7 /* other editable flags omitted */8 "categories_editable": true,9 "default_categories": [],
10 "default_date_range": [],11 "default_date_interval": "monthly",12 "metric_series": [],13 "metric_series_addition": {}}
2014-05-27 – Schätzlein – Metric Visualization Backup 3/ 9
Visualization Template II
Template configuration
"configuration": {"categories": [],"date_range": [],"date_interval": "","title": "","subtitle": "","x_axis_type": "","x_axis_title": "","y_axis_type": "","y_axis_title": "","navigator": true,"data_label": false,"series": [],"container": ""
}
2014-05-27 – Schätzlein – Metric Visualization Backup 4/ 9
Visualization Template III
Embedded visualization
1 $[metricVisualization()$2 {"properties": {"name": "Bullet Chart"},3 "configuration": {4 "title": "Application Continuity Plan Availability",5 /* defaults omitted */6 "series": [{7 "name": "Measure",8 "id": "applicationContinuityPlanAvailability",9 "data": []
10 },{11 "name": "Target",12 "id": "applicationContinuityPlanAvailabilityTarget",13 "type": "scatter",14 "data": []15 }],16 "container": ""}17 "highcharts_expert": {}}18 $metricVisualization]$
2014-05-27 – Schätzlein – Metric Visualization Backup 5/ 9
Visualization Template IV
“Expert” configuration{"properties": {"name": "Bullet Chart",/* omitted*/
},"configuration": {/* omitted */},"highcharts_expert": {"chart":{"borderWidth": 2}
}}
Result
Application continuity plan availability
0 25 50 75 100 %
2014-05-27 – Schätzlein – Metric Visualization Backup 6/ 9
Visualization of historical data
let criticalApplications =find(’Business Application’).where(’is critical’) incriticalApplications.ratio(’covered by’ <> null)
applicationContinuityPlanAvailability() @ date * 100
2014-05-27 – Schätzlein – Metric Visualization Backup 7/ 9
Dynamic configuration dialog
"dialog": [{"label": "Border color","type": "color","mapped_to": {"chart": {"borderColor": "#000000"}}},
{"label": "Border width","type": "number","mapped_to": {"chart": {"borderWidth": 0}}}]
2014-05-27 – Schätzlein – Metric Visualization Backup 8/ 9
Guided metric selection
2014-05-27 – Schätzlein – Metric Visualization Backup 9/ 9