theia-trace-extension
theia-trace-extension copied to clipboard
Open some default views when a trace is opened
Opening a couple views that go from high-level to low-level has several benefits for users:
- Quick feedback when I open a file (indicates that open trace was successful)
- Can dive right into analysis
- Suggests a good default analysis flow (high level --> low level views)
- Makes linked chart features discoverable (e.g. when you select a section of a graph it selects those events in the Events Table).
On the other hand, opening default views can be annoying for experienced users who don't need this additional guidance.
The default views are opened once and afterwards they can be moved, deleted, etc. as any other view would be (they have no special status).
Default views
- Events over time (Histogram): Offers an overview. We can guarantee that this data is always available regardless of the events in the trace (the view will always be available).
- A timeline chart (depends on the trace type): Could have a list of charts you try to open, or just open the first 1-2 compatible timeline charts
- Events Table
These views were chosen because:
- These charts are usually available regardless of the events in the trace
- They have a good range of detail
However, they're not based on user data or on the observation of analysis experts and may need to be adjusted in the future based on this.
Good default layouts are:
- Based on observation of analysis experts: Do different analysis experts use similar approaches for similar tracing problems? Which analysis steps are common to all problem types? Implementing #267 could help answer these questions.
- Common step example: Verifying that you opened the correct trace (Does the metadata match the expected system, time, etc.? Is the problem to be analyzed present in the trace?)
- Start with high-level overviews: #393 Starting the user in a place that feels familiar (ex. system call level) orients them before they dive deeper
- Conservative (rather than complete): Problems that require tracing to solve are specialized so it's impossible to include every analysis that could be useful. By keeping default layouts minimal (only including views that are useful to everyone) we avoid annoying the experts with clutter and we encourage new users to make choices and actively engage in the analysis process.
@ebugden, can you please clarify how this one differs from #268?
@ebugden, can you please clarify how this one differs from #268?
Good point. I adjusted #268's title and description as well as this issue's description. It needed to be updated because of changes in plan and because this issue exists now (more detailed explanation below). Thanks for mentioning this. Let me know if it's clear now!
- #510 - One set of default views (a reasonable guess, not based on user data)
- #268 - Several sets of default views (ideally based on user data about view use frequency and tracing experts)
#268 was vague because, before #510 was created, the step of having just one basic set of views was implicitly included in #268 (as a first step). It also didn't have much detail because we initially planned for a basic set of default views to come later in the project (after the MVP, based on statistics of which views experts were using the most), but it's now happening earlier (to guide new users and to tutorialize the linked selection/navigation between charts).
Thanks, it's clear now.