How We Test Software at Microsoft

Author: Alan Page, Ken Johnston & Bj Rollison
Publisher: Microsoft Press, 2009
Pages: 405
ISBN: 978-0735624252
Aimed at: Developers and software architects, managers and general audience of software users
Rating: 4
Pros: Lots of amusing anecdotes, some clear theory
Cons: Lacks specific detail of testing techniques
Reviewed by: Mike James

A book on testing software at Microsoft! It’s a gift to anyone wanting to make a joke at the company's expense. Many a user would claim that, based on its products, there is no evidence that testing goes on at all and surely such a book would have very few pages. Of course this is unfair, but fun. Getting software right isn't easy and given the size of the Microsoft codebase you can expect one or two bugs to have slipped through. So a book on how the software giant tackles the problem is a good idea and should be instructive.

The first thing to say is that this is not the book to read if you want to know anything much about the theory and practice of testing. It does describe some of the basic ideas of testing, and it has some nice anecdotes that will raise a smile, but it really doesn't describe anything that isn't better described in other books. It isn't a course on how to test software, this much is clear, but what exactly the book is all about is more difficult to explain. It starts off with some reminiscences of Microsoft, tales of company days out and bonding. It describes how the idea of testing software seems to have occurred to Microsoft at what to the rest of us might seem like a very late point in the development of a software company. It covers how Bill Gates hired people who went to the same school as he did to do jobs he really didn't seem to understand. It explains how Microsoft realised that testing was a good idea and how they recruited people, created job structures and managed the whole thing. This first section of the book is best described as a guide to the testing management structures within Microsoft. The enthusiasm for the company expressed if probably appropriate for a Microsoft employee writing a Microsoft Press title but for the reader it very quickly becomes slightly embarrassing and gauche. It reads very much like a final year school student writing up a report of the year's activities certain that it will be read by the principal. Overall the effect is to make you think that Microsoft started out as an amateur organisation and stumbled its way to some sort of serious professional structure by shear enthusiasm and energy. A notion I personally can believe.

The second major section is about testing theory. For the general reader interested in testing rather than in Microsoft this is worth the effort as it is a well written and clear, but it doesn't go very far and you can find the same in almost any book on the subject. If you know nothing at all about testing then it’s a good introduction and might be useful if you have to introduce testing ideas to a non-programmer member of a team to get them more fully on-board. The theory laid out in this section can be used in conjunction with a variety of software testing tools available on the market.

Later chapters describe how testing is performed but you never really know if the author is telling you that this is the way Microsoft does it. To be clear, nowhere does the book detail how Microsoft tests any particular product and certainly not the flagship product - Windows. Again there are lots of anecdotes and occasionally you can't help feeling that Microsoft as a company was, and perhaps still is, naïve about how to do things. Even so you can't help be envious of their resources. The story about buying $20,000 worth of multimedia from the local computer store to test to see how Windows 95 worked with them is a case in point - ironically the point of sale computers couldn't cope with the number of items or the bottom line and kept on crashing. The testing was then actually carried out by asking employees to "adopt a multimedia title" - i.e. take a free program home, to keep, in reward for running it and testing it. Pragmatic - yes. The way to go in structured software testing? Probably not. I actually enjoyed this part of the book as it is an easy-to-read mixture of practical testing theory and tiny snipes of juicy information about how the "big boys" behave behind the scenes. For example, how did they stress test Office in the early days? The answer is a stapler laid across the keyboard to product a stream of character input. Well it worked! There's a lot of discussion of minor testing technique in fairly minor Microsoft products and you might well find all of this interesting but it doesn't answer any of the really big questions.

The final verdict has to be that this is a book that you could well enjoy reading but not for the promise of new knowledge but simply to get a tiny view inside the software giant that is Microsoft and to discover that it is sometimes just as clueless as the rest of us.


Core Java Volume I Fundamentals

Author: Cay S. Horstmann & Gary Cornell 
Publisher: Prentice Hall, 9th ed
Pages: 1008
ISBN: 978-0137081899
Audience: All Java programmers
Rating: 4.5
Reviewed by: Alex Armstrong

This ninth edition is a revised and updated incarnation of classic - but this is no reason not to review it.

Being Agile

Author: Mario Moreira
Publisher: Apress
Pages: 255
ISBN: 978-1430258391
Audience: All those who have contemplated or tried transition to agile
Rating: 4.5
Reviewer: Andrew Johnson


The subtitle of this book is "Your Roadmap to Successful Adoption of Agile" and it is aimed at a wide audience.

More Reviews

Last Updated ( Thursday, 22 May 2014 )

RSS feed of book reviews only
I Programmer Book Reviews
RSS feed of all content
I Programmer Book Reviews
Copyright © 2014 All Rights Reserved.
Joomla! is Free Software released under the GNU/GPL License.