Book contents
- Frontmatter
- Dedication
- Contents
- Preface
- Foreword
- Acknowledgements
- List of acronyms
- Part 1 Fundamentals
- Part II Application development
- 3 Application development – the basics
- 4 Application development – data flow programming
- 5 Large-scale development – modularity, extensibility, and distribution
- 6 Visualization and debugging
- Part III System architecture
- Part IV Application design and analytics
- Part V Case studies
- Part VI Closing notes
- Keywords and identifiers index
- Index
- References
6 - Visualization and debugging
from Part II - Application development
Published online by Cambridge University Press: 05 March 2014
- Frontmatter
- Dedication
- Contents
- Preface
- Foreword
- Acknowledgements
- List of acronyms
- Part 1 Fundamentals
- Part II Application development
- 3 Application development – the basics
- 4 Application development – data flow programming
- 5 Large-scale development – modularity, extensibility, and distribution
- 6 Visualization and debugging
- Part III System architecture
- Part IV Application design and analytics
- Part V Case studies
- Part VI Closing notes
- Keywords and identifiers index
- Index
- References
Summary
Overview
In this chapter, we examine visualization and debugging as well as the relationship of these services and the infrastructure provided by a SPS. Visualization and debugging tools help developers and analysts to inspect and to understand the current state of an application and the data flow between its components, thus mitigating the cognitive and software engineering challenges associated with developing, optimizing, deploying, and managing SPAs, particularly the large-scale distributed ones.
On the one hand, visualization techniques are important at development time, where the ability to picture the application layout and its live data flows can aid in refining its design.
On the other hand, debugging techniques and tools, which are sometimes integrated with visualization tools, are important because the continuous and critical nature of some SPAs requires the ability to effectively diagnose and address problems before and after they reach a production stage, where disruptions can have serious consequences.
This chapter starts with a discussion of software visualization techniques for SPAs (Section 6.2), including the mechanisms to produce effective visual representations of an application's data flow graph topology, its performance metrics, and its live status.
Debugging is intimately related to visualization. Hence, the second half of this chapter focuses on the different types of debugging tasks used in stream processing (Section 6.3).
Visualization
Comprehensive visualization infrastructure is a fundamental tool to support the development, understanding, debugging, and optimization of SPAs.
- Type
- Chapter
- Information
- Fundamentals of Stream ProcessingApplication Design, Systems, and Analytics, pp. 178 - 200Publisher: Cambridge University PressPrint publication year: 2014