Welcome to MSDN Blogs Sign in | Join | Help

Vista Rant #3 - And yet another boundary issue in Explorer's listview?

This morning I installed Vista SP1 onto my laptop. I was pretty excited about this release of Vista SP1 because it includes some pretty significant performance enhancements. But, as I was preparing to teach an internal course I came across a new boundary issue. I thought, how fitting this comes as I prepare to teach another class on systematic testing techniques (including boundary value analysis) that I find yet another classic boundary issue in Explorer's list view (albeit the boundary condition is not readily apparent) . Interestingly enough, the previous boundary issue I found appears to be fixed with Vista's SP1; however, I previously did not run across this issue which is also connected with how listview repaints itself after an event.

To reproduce this issue, open a folder with several dozen files in Explorer and select Views -> List and resize the Explorer window so there are several columns of files.

Select a file in the list and press the up or down arrow key so a dotted line appears around the file name

Resize the Explorer window so that the highlighted area is about 1 pixel away from the right most edge of the Explorer window as in the example below

LV1

Press the down (or up depending on which file you have selected) arrow key, and notice how the file highlight jumps to the next file in the list as expected.

Next, resize the the Explorer window so the dotted line touches the inner boundary of the window as in the example below

image

Now, press the down (or up depending on which file you have selected) and...

 image

Notice, in the image above that just to the left of the frogger.def file the right most edge of the file highlight is visible, and also notice the file image has changed, and the scroll bar has jumped over to the next column.

Press the down (or up) arrow key again, and....

image

Seeing this behavior the first time made me think I was losing my mind! (OK...I probably am, but that is a completely different topic). And yes, reducing the size of the window beyond where the maximum boundary of the highlight window will also cause the same behavior, but the issue occurs when the width of the file highlight window >= the maximum x boundary size of the Explorer listview window.

The listview in Windows Vista has some very cool features, and overall I like Vista. What I dislike are some of the simple anomolies that could be easily exposed via more detailed, systematic testing approaches and analysis of the system under test rather than simply assuming more bodies banging on keyboards for some arbitrary period of time equates to better testing.

So, some things to consider when boundary testing...

  • Not all boundary conditions are easily identified from the GUI by numbers, but all boundaries conditions have linear physical values that can be measured at some level
  • Boundaries can change, similar to way the boundaries changed around Kosovo. Somebody moved the lines. The same thing is true in software, a boundary condition may change with human interaction, but a boundary condition is a linear physical range between a minimum and a maximum value (in this case the x coordinates of the Explorer changed with human interaction, but once focus moved away from the Explorer window the size of x established a fixed boundary (at least until a user again resized the window or the window is closed).
  • Boundary conditions for one parameter are usually independent. For example, resizing the y-axis in the above scenario has no impact on this defect (unless of course the y-axis is large enough to accommodate all files in the listview without having to scroll horizontally). Boundary testing is based on the single fault assumption theory which states that a boundary issue is most likely to occur with independent parameters where the boundary variables for one parameter are analyzed while holding other parameters to nominal values. (Note: if we suspect that parameters are dependent or semi-coupled, then we should also perform combinatorial analysis testing.)
  • There is a difference between boundary conditions (at least momentarily fixed, linear, measures) and threshold values. Threshold values can be altered by various influences. For example, in performance testing the point of degradation in performance can often be changed by several external influences such as increasing physical memory, cleaning and defragmenting the hard disk, modifying the software, etc.
  • A detailed analysis of the system under test will reveal issues that other approaches to testing do not expose...that's the pesticide paradox!
Published Wednesday, February 27, 2008 6:19 PM by I.M.Testy

Comments

# Microsoft News Weblog » Blog Archive » Vista Rant - And yet another boundary defect in Explorer’s list view?

# re: Vista Rant #3 - And yet another boundary defect in Explorer's listview?

My biggest rant on the Explorer listbox is this:

In XP, you can right-click anywhere on the row to select the row.  E.g. try right-click, delete.  Yes, it deletes the file you thought it would.

In Vista, when detail view is shown, you can only right-click on text.  E.g. right-click, delete in space on a row.  You've probably just lost a folder or something.

Nice, eh?

I'd hoped that this would have been fixed in SP1 as it is a dangerous UI change.

Wednesday, February 27, 2008 3:32 PM by DPilcher

# re: Vista Rant #3 - And yet another boundary defect in Explorer's listview?

I see here two transitions between one equivalence class and another:  

1) a difference between the highlight on /a folder, with a folder visible/ and the highlight on a /file with no folder visible/ (the transition between the second screenshot and the third); and

2) a difference between a file highlighted /when a folder is visible/ and a file highlighted /when a folder is not visible/ (the difference between the third screenshot and the fourth).

There appears to be different behaviour based on these distinctions.  I could describe it in a number of ways, but a boundary-based explanation would be come retrospectively to me.  That is, I would conceive of a boundary only after I had seen the behaviour.  But I'm also not sure how helpful it is to describe it as a boundary anyway.  I think I'd prefer to think in terms of welcoming multiple models,  rather than trying to retrofit an explanation onto my favourite one.  (Except that having lots of models IS, arguably, a favourite model.)

I was more curious as to why there's a "date modified" column header visible, but no dates visible.  (I'm travelling, and have no access to my kids' machine, which is the only Vista machine I'll let in the house.)  So I tried to reproduce this under XP.  It took me a while to recognize what was going on.  I realized that your problem above depends on multiple columns.  Then I realized that multiple columns are available only under List mode.  Under XP's Classic View, when you ask for List Mode, there are no details and no column headers.  In Vista, there are column headers in list view, but (apparently) no details under those column headers.  So, to me, I could report the bug, but really I want to report an issue:  what's with the column headers?

Friday, February 29, 2008 1:29 AM by Michael A Bolton

# re: Vista Rant #3 - And yet another boundary defect in Explorer's listview?

Oh, and another thing... look at how the file description is truncated in the third image above, where it's okay in the other three.  That's a visible boundary thing, I guess, if you want to shoehorn it into a boundary model--but no matter what the model, it's an annoyance.

This is an example of why I think we should pay careful attention to emotions like annoyance, or surprise, or confusion.  These are contributions that humans can make that machines can't detect.  By all means, leverage machines for what they're good at, but they're just tools.  They shouldn't be mistaken for the consciousness that wields them.  Now that you've been surprised and annoyed by the Vista bug, you can probably code a test for it, but until the point that you recognize that kind of a problem, automated tests will be blind to it.

An engaged human tester is an excellent defense against the pesticide paradox.

Friday, February 29, 2008 1:54 AM by Michael A Bolton

# re: Vista Rant #3 - And yet another boundary defect in Explorer's listview?

Hi Michael,

Yes, you are quite right. Boundary conditions not only occur at the extreme ranges of linear values, but they also often exist at the edges of equivalence class subsets. This particular boundary defect could have been found via testing the appropriate invalid class subset for width < length of filename window, or specifically via boundary analysis applied correctly.

I think your comments in the second paragraph really speak to our differing perspectives, and as you say having multiple models or approaches is arguably favorable. That is why I appreciate the symbiotic relationship between exploratory testing, systematic analysis, and other approaches.

The value I see in identifying this as a boundary error is that it gives the developer a specific point of reference, or value to consider in fixing the defect.

The listview controls in Xp and Vista are different animals and Vista provides some cool additional extended properties. The reason why there are column headers in all views is because the LVS_EX_HEADERINALLVIEWS extended style is set to show the column headers in all the view modes to allow the user to sort the view in different view modes.

The file description is truncated because the image of the file is actually a rendition of the BMP image, while for the more generic file types it is an ico file that is displayed. Personally, I wouldn't consider this a boundary defect because the truncation is visibly obvious as illustrated with the elipsis characters. Essentially, the size of the window that displays the file information resizes correctly and withn the boundaries of the Explorer window.

Personally, I wasn't annoyed by the Vista bug. I really don't get annoyed very often, and software rarely annoys me. So, I don't want to burst your emotional bubble, but my pre or post emotional state had no bearing on the discovery of this defect. I discovered this defect using my skills of observation, my cognitive abilities to know this was a defect, and my in-depth knowledge to understand why it is a defect.

Automated tests at Microsoft are always designed and developed by engaged human testers. (We unfortunately don't have a magic machine that spits out automated tests, and we rarely rely on simple record/playback or rote scripts.)

I agree, engaged testers who are understand the functionality in-depth, and approach the problem from multiple perspectives (exploratory, systematic analysis, automation, etc) provide an excellent defense against the pesticide paradox.

Friday, February 29, 2008 3:11 AM by I.M.Testy

# re: Vista Rant #3 - And yet another boundary issue in Explorer's listview?

Two followup questions:

Would you agree that showing fragments of useful information where it's possible to show more useful information could be viewed as a bug?

Would you agree that surprise or confusion are emotional reactions to a situation?

---Michael B.

Sunday, March 02, 2008 3:38 PM by Michael A Bolton

# re: Vista Rant #3 - And yet another boundary issue in Explorer's listview?

Hi Michael,

Two follow up answers:

1.) It depends on the context! In this particular case it is not possible to display more useulf information due to the size limitations of the window. Another example where it might be acceptable to show properly truncated information (or 'fragments') could be the display of really long file names (say > 80 characters) on the desktop. Although I have plenty of desktop space, long file names are generally truncated to 2 line rows below the icon and displays the entire file name when the icon is selected.

2.) Yes. One can experience a wide range of emotions to a situation...again, depending on the context of the specific situation, the person, and the person's frame of mind (mental state) at that time in that specific situation.

Monday, March 03, 2008 1:36 AM by I.M.Testy

# re: Vista Rant #3 - And yet another boundary issue in Explorer's listview?

<i>1.) It depends on the context! In this particular case it is not possible to display more useulf information due to the size limitations of the window.</i>

So maybe the useful information from a tester would be that the graphic isn't terribly useful information; or that it's too wide and therefore bumps the interesting stuff off the screen; or that the bitmap doesn't scale down to permit the file data to remain visible.  This is the George Carlin heuristic:  "Some say the glass is half full.  Others say the glass is half-empty.  I say the glass is <i>too big</i>."  The point is that there's more than one way to look at the problem, and more than one way to solve it--and that reasonable people  will have different answers about both the problem and the solution.

<i>Another example where it might be acceptable to show properly truncated information (or 'fragments') could be the display of really long file names (say > 80 characters) on the desktop. Although I have plenty of desktop space, long file names are generally truncated to 2 line rows below the icon and displays the entire file name when the icon is selected.

Yes [grin], and the decisions made by software (and its authors) on this issue are often deeply unsatisfying.  That's because it never fails:  when I want to see the path, the app is showing ellipses in the middle, and when I want to see the filename, the app is showing the path and truncating it before the filename.

That's why I like the tooltip convention of showing me the whole thing when I mouse over--but if I'm trying to copy and paste the pathname, that dog won't hunt either.  Now if I could right-click on the filename and get the whole pathname into the clipboard, that would be cool--but when I right-click on the first image above, I get this:

http://blogs.msdn.com/blogfiles/imtesty/WindowsLiveWriter/VistaRant3Cansomeonepleasetesttheboundar

instead of the complete pathname.  Oh well.

<i>2.) Yes. One can experience a wide range of emotions to a situation...again, depending on the context of the specific situation.</i>

Fair enough.  Now, you call this "Vista Rant #3"; you name the graphic above "Cansomeonepleasetesttheboundar"; you call yourself "I.M. Testy" here, and you say  "<i>Seeing this behavior the first time made me think I was losing my mind!</i>".  That sounds like surprise and confusion to me.  Are you <i>sure</i> that, as you say, "my pre or post emotional state had no bearing on the discovery of this defect"?  And if it did, would that be a problem?  Or might it be something that might give you important heuristic insight into the significance of the problems that you find?

<i>"What I dislike are some of the simple anomolies that could be easily exposed..."</i>--isn't dislike an emotional reaction too?  Could that emotional reaction tell you something about things that you'd like to change about the way Vista is tested?

Would you agree that passion is an emotional engagement with something?  If someone said, for example, <i>...it is the fervent passion for the discipline that I admire most in testers</i>, would you agree with him?

Cheers,

---Michael B.

Monday, March 03, 2008 4:07 PM by Michael A Bolton

# re: Vista Rant #3 - And yet another boundary issue in Explorer's listview?

I don't think we disagree that there are many ways to look at a problem, and there are also many ways to solve a problem. Maybe this issue was discussed. Maybe a business decision was made because that was what the vast majority of customers wanted (perhaps they didn't consult you). Maybe there were extensive usability studies that demonstrated something to be more effective as compared to something else. Maybe, you know more than people who have spent years studying design and usability, who perform extensive research in the area of usabilty and design, and who are introducing innovative designs towards the future.

WRT your percieved problem, when one right clicks on the image in the post in either Vista or Xp a popup context menu appears. On the popup context menu you can select the Open Link, Open Link in New Tab, or Open Link in New Window menu items and the url will display the complete path of http://blogs.msdn.com/blogfiles/imtesty/WindowsLiveWriter/VistaRant3Cansomeonepleasetesttheboundar_EC04/LV1_2.jpg. You can also select the Copy Shortcut menu item to copy the complete path to the clipboard, or you may select the Properties menu item and then double click the Address:(URL) and copy the complete path to the clipboard or (although the properties General tab doesn't show the complete path unless you highlight the path and move the mouse down while highlighting; which I agree is not ideal). See, there really are different perspectives and solutions to a given problem. Of course, the more we understand the system the more we can understand the more we can explore those various perspectives and potential solutions.

I do not agree with the statement "it is fervent passion for the discipline that I admire most in testers." I do admire people who demonstrate passion as expressed through their constant desire to learn and improve their knowledge and their abilities of a profession regardless of that profession. But, no I do not consider 'fervent passion' to be the single thing that I admire MOST in a person; but it is an admirable characteristic. There is probably not a single trait or characteristic that I admire most, it is a collection of traits, characteristics, skills and knowledge, and the ability to balance them appropriately within a given situation.

I am not really sure where you are driving with all the 'emotion' hyperbole. Humans evoke various emotions in response to various environmental stimuli. Since I am still mostly human (although I have some stainless pins and screws and a titanium plate holding parts of me together, I have not yet been fully transformed into an android) I was surprised by the anomoly in the listview. But, (this is important) I expressed that emotion AFTER I discovered the anomoly. As I said, my emotional state had no bearing on the discovery of this particular anomoly.

I suspect that you are trying to convince me that I rely on emotional responses to test, but I must say that I really don't rely on my emotions when I am analyzing a problem or designing effective tests to evaluate a given hypothesis. I might have emotional reactions while testing, but often I find that a logical argument with facts is more effective in driving a point as compared to unbridled rants, whining or crying, sniping, or petty complaints (although they do sometimes work...especially crying).

Personally, I rely mostly upon my in-depth knowledge, my cognitive abilities to recognize acceptable and unacceptable states, my abilily to think critically about a problem space and design effective tests within the appropriate and possible contexts. Sometimes, when those tests result in an unexpected outcome I am surprised or disappointed or over-joyed, because I am, afterall, still human!

Monday, March 03, 2008 7:34 PM by I.M.Testy

# re: Vista Rant #3 - And yet another boundary issue in Explorer's listview?

>my emotional state had no bearing on the discovery of this particular anomoly.

Research into cognition suggests very strongly that it did, in fact.  Look up the work of Antonio Damasio, for example; read Karl Weick on the process of sensemaking.  I'm finding it difficult to reconcile your earlier language and your earlier escription of your reactions with your denials here.  It makes it hard for me to trust what you're saying from moment to moment.  But maybe there's a pattern.

>I do not agree with the statement "it is fervent passion for the discipline that I admire most in testers."

http://blogs.msdn.com/imtesty/archive/2006/09/08/746954.aspx

---Michael B.

Tuesday, March 04, 2008 2:25 AM by Michael A Bolton

# re: Vista Rant #3 - And yet another boundary issue in Explorer's listview?

Yes Michael, there are several theories that try to explain the relationships between emotional states and mental processes and human behaviors. Personally, I enjoyed reading Minsky's "The Emotion Machine: Commonsense Thinking, Artificial Intelligence, and the Future of the Human Mind." I would recommend it if you are not opposed to commonsense.

As I said, I admire passion, I no longer admire that as the single most important characteristic because since I made that statement in September 2006 I have learned more and expanded my knowledge and personal viewpoints. I try to use new knowledge and new experiences to constantly re-evaluate my position and views as compared to other people who notoriously ignore or misrepresent facts to support antiquated untenable positions or constatnly reshash biased rhetoric without empricial evidence to substantiate claims.

Your absolutely correct about a pattern. You have a pattern of talking about psychological theories and speculating about emotional states rather than staying within the context of software testing and computer science.

I am not an expert in philosophy (which is good because Microsoft didn't hire me to philosophize; they hired me to test software and they now rely on me to teach software testing to new testers and developers in the company), but I suspect you might be a good philosopher. However, based on your endless curiosity regarding someone's emotional state at particular times, and the lack of technical accuracy in some of your previous comments it makes it hard for me to trust what you are saying within certain contexts.

Tuesday, March 04, 2008 3:41 PM by I.M.Testy
Anonymous comments are disabled
 
Page view tracker