blob: fedb494338e7407e1392f2ceb86926547fb638ae [file] [log] [blame]
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
<title>Performance Scenarios</title>
</head>
<body bgcolor="#FFFFFF" text="#000000">
<p>The following set of scenarios contains all those scenarios that we think are
important for the overall perception of text related performance by the users.
We distinguish between user's first contact, permanent user activities, and
rare user activities. User's first contact describes the setup and the activities
that reflect the situation when a user starts the system and pursues certain
actions for the fist time during that session. Permanent user activities describes
the setup and the activities that reflect the situation that the user faces
when continuously working with the system. Rare user activities describe the
setup and the activities that reflect the situation that the user faces only
infrequently but may hamper the user's trust into the system. The numbers behind
the subject indicate the importance of the scenario. E.g., typing speed is more
important than speed in which the selection can semantically be expanded.</p>
<h3>User's first contact</h3>
<ul>
<li><b> Open editor (1)</b></li>
<ul>
<li><img src="ok.gif" height=10 width=10 /> Open first text editor in the resource perspective. Measure time until
the first user interaction with the newly opened editor is possible.</li>
<li><img src="ok.gif" height=10 width=10 /> Open first Java editor in the Java perspective. Measure time until the
first user interaction with the newly opened editor is possible.</li>
<li><img src="ok.gif" height=10 width=10 /> Restart workbench with an open Text editor in the resource perspective.</li>
<li><img src="ok.gif" height=10 width=10 /> Restart workbench with an open Java editor in the Java perspective.</li>
</ul>
<li><b>Open Quick Outline (2) </b>
<ul>
<li><img src="ok.gif" height=10 width=10 /> Open Quick Outline for a large Java file for the first time. Measure
time until the outline pops up.</li>
</ul>
</li>
</ul>
<p></p>
<h3>Permanent user activities</h3>
<ul>
<li> <b>Typing (1) </b>
<ul>
<li><img src="ok.gif" height=10 width=10 /> Typing speed in the Text editor at the end of a large file.</li>
<li><img src="ok.gif" height=10 width=10 /> Typing speed in the Java editor at the end of a large file.</li>
<li><img src="ok.gif" height=10 width=10 /> Smart paste at the end of a large Java file in the middle of a method (default content type)</li>
<li><img src="ok.gif" height=10 width=10 /> Autoedit when pressing enter after /** right in front of the declaration
of a complex method (return value, number of args, thrown exceptions)</li>
</ul>
</li>
<li> <b>Painting (1) </b>
<ul>
<li><img src="ok.gif" height=10 width=10 /> Painting annotations in text with squiggle lines when typing.
<ul>
<li>Measure number of repaints</li>
</ul>
</li>
<li><img src="ok.gif" height=10 width=10 /> Painting annotations in text with squiggle lines when scrolling with the mouse using the scrollbar. (mouse scrolling depends on <a href="https://bugs.eclipse.org/bugs/show_bug.cgi?id=72244">bug 72244</a>, current solution uses keyboard events)
<ul>
<li>Measure number of repaints</li>
</ul>
</li>
</ul>
</li>
<li> <b>Open editor (1) </b>
<ul>
<li><img src="ok.gif" height=10 width=10 /> Open Text editor for a large file after a warm-up of opening and closing
the same file 10 times.</li>
<li><img src="ok.gif" height=10 width=10 /> Open Java editor for a large file after a warm-up of opening and closing
the same file 10 times.
<ul>
<li>Configurations
<ul>
<li><img src="ok.gif" height=10 width=10 /> with/without Outliner as part of the perspective</li>
<li><img src="ok.gif" height=10 width=10 /> with code folding enabled/disabled</li>
</ul>
</li>
<li><img src="ok.gif" height=10 width=10 /> Measure time until the first user interaction with the newly opened
editor is possible.</li>
<li><img src="ok.gif" height=10 width=10 /> Measure number of computed TextPresentations.</li>
</ul>
</li>
<li><img src="ok.gif" height=10 width=10 /> Switching between open editors</li>
</ul>
</li>
<li><b>Content assist (2)</b>
<ul>
<li><img src="ok.gif" height=10 width=10 /> Request content assist in the middle of a method. Measure time until
the popup is visible.</li>
</ul>
</li>
<li><b>Save (3)</b>
<ul>
<li><img src="ok.gif" height=10 width=10 /> Save a large file in the Text editor.</li>
<li><img src="ok.gif" height=10 width=10 /> Save a large file in the Java editor.</li>
</ul>
</li>
<li><b>Compound changes (4)</b>
<ul>
<li><img src="ok.gif" height=10 width=10 /> Format a large compilation unit including Javadoc comments.</li>
<li><img src="ok.gif" height=10 width=10 /> Revert Text/Java editor with folding enabled/disabled.</li>
<li><img src="ok.gif" height=10 width=10 /> Undo shifting a large compilation unit to the right.</li>
<li><img src="ok.gif" height=10 width=10 /> Move a single line in a large compilation unit.</li>
</ul>
</li>
<li><b>Navigation (5) </b>
<ul>
<li><img src="ok.gif" height=10 width=10 /> In the Java editor, in a method of a large compilation unit, semantically expand selection.</li>
</ul>
</li>
<li><b>QuickDiff (6)</b>
<ul>
<li><img src="ok.gif" height=10 width=10 /> Measure memory consumption of Quick diff while initializing. The large compilation unit is widely changed compared to the reference.</li>
</ul>
</li>
</ul>
<h3>Rare user actions</h3>
<ul>
<li><b>Compound changes (4)</b>
<ul>
<li><img src="ok.gif" height=10 width=10 /> Replace all occurrences of a string in a large compilation unit.</li>
<li><img src="ok.gif" height=10 width=10 /> Convert line delimiter of a project</li>
<li><img src="ok.gif" height=10 width=10 /> Format a project</li>
</ul>
</li>
</ul>
</body>
</html>