Monthly Testing Newsletter -- January 2000
Software Development Process
(requirements, project management, methodology, etc.)Editorial: Cutting Corners
Choosing the fast route through a proven process means omitting or shortchanging some productive activities, and the piper will be paid-if not now, then later.
http://www.sdmagazine.com/documents/s=747/sdm0002h/0002h.htm
Site: Coding Humor
Some quite humorous statements and aphorisms about programming and testing software. You've probably seen or heard a number of them, but they're still funny.
http://www.heuse.com/cphumor.htm
Article: Structuring Use Cases with Goals
Found by Maureen Anderson
Use cases are wonderful but confusing. People, when asked to write them, do not know what to include or how to structure them. There is no published theory for them. This paper introduces a theory based on a small model of communication, distinguishing "goals" as a key element of use cases. The result is an easily used, scaleable, recursive model that provides benefits outside requirements gathering: goals and goal failures can be explicitly discussed and tracked; the goals structure is useful for project management, project tracking, staffing, and business process reengineering. The model and techniques described here have been applied and evaluated on a relatively large (50 work-year, 200 use-case) project.
http://members.aol.com/acockburn/papers/usecases.htm
In addition to this article on use cases, this author has a draft of an online book on writing use cases. You can download a copy of the book draft in PDF format at
http://members.aol.com/humansandt/crystal/usecasetechnique/getWEUCbook.htm.Article: A Review of Error Messages
Error messages, if they're posted at all, should convey helpful information and advice--not only for the user, but also for tech support and maintenance programmers. Here are a few things to think about when coding your error-handling routines and designing your error messages. [Disclosure: A fellow that I used to work with wrote this article.]
http://home.earthlink.net/~mbolton/AReviewOfErrorMessages.html
Article: Lost in Chaos: Chronology of a Failure
On the surface, the ingredients for success were there: an enthusiastic and capable team, a competent manager and proper funding. So why was the project a disaster?
http://www.sdmagazine.com/documents/s=821/sdm0001b/
Article: Keeping the customer satisfied
HOW DO YOU QUANTIFY quality? It's something PacifiCorp's 300 IT employees wrestle with daily, as they are beholden to specific service-level benchmarks and regularly comparing themselves to outsourcing options.
http://www.infoworld.com/articles/ca/xml/00/01/17/000117caeval.xml
http://www.infoworld.com/articles/ca/xml/00/01/17/000117cacases.xml
Software Testing & Quality
Site: Brian Marick's Testing Craft
Site with a wide array of information and case studies on various topics in software testing and quality assurance.
http://www.testingcraft.com/
Article: Client/Server Performance Testing Defining the Key Criteria for Success
We are often approached by clients who are very interested in Load, Stress, Performance and/or Scalability testing services for their Client/Server products. They want to know (or have been prompted by their customers or someone in their Marketing department who wants to know) how their application performs under load or stress conditions, and how scalable it is in an enterprise environment. The need for this information is very real and it seems like a very easy, straightforward question to answer. However, it quite often turns out to be a complicated process to provide these essential answers on Client/Server products. This is largely due to the complexity of the products themselves and the computing environments in which they operate. This is especially true of products that are designed as enterprise-wide solutions, providing a rich and diverse set of features and functionality to address a variety of needs in a single software solution.
http://data-dimensions.com/testersnet/docs/csperftest.htm
Article: Emphasizing Software Test Process Improvement
Found by Leon Gaithe
On average, programmers create six to eight defects in every 100 lines of code (LOC) [1]. They create 12 to 20 defects per 100 LOC if the code is not structured and is poorly documented. These defect rates improve to two to three defects per 100 LOC if the code is structured and documented. However, the rates only improve to one to 1.5 defects per 100 LOC for subsystems, programs, or modules after typical unit testing. We certainly need techniques to improve defect detection during coding and unit testing.
http://www.stsc.hill.af.mil/crosstalk/1996/jun/emphasiz.asp
Article: ASQ is more than testing tools
A successful automated software quality process must occur throughout the development life cycle. True or false: Automated testing is the only way to ensure the quality of an application. The answer depends on whom you ask and the depth of his or her experience. Software developers are told over and over that testing is the last chance to "get it right" prior to deployment.
http://www.adtmag.com/Pub/jan2000/ebusiness.htm
Site: Veritest Testers' Network
IT out-sourcing company with articles related to software testing.
http://www.veritest.com/testers'network/
Article: Working Effectively With Developers (Acrobat PDF file)
Developers and testers often do not work effectively together. Either the developers can change, we can change, or both. I've never had much luck directly changing other people's behavior. I have had luck changing my own behavior to indirectly elicit improvements in the way developers act. And those changes feed back to me, producing a virtuous cycle in our relationship. This paper is about my approach to working effectively with developers.
http://www.testing.com/writings/effective.pdf
Tutorials
Tutorial: Oracle/SQL Tutorial
Very comprehensive tutorial on SQL and Oracle development (PL/SQL). Tutorial is available in Postscript and PDF format.
http://www.db.cs.ucdavis.edu/teaching/sqltutorial/
Tutorial: TCP/IP Architecture
Introduction to TCP/IP and its implementation in Windows NT. [Article is obviously oriented toward Microsoft products, but it gives a very good top-level view of how TCP/IP works.]
http://www.microsoft.com/technet/network/tcparch.asp
Career Development/Miscellaneous
Article: Ten Turning Points for Computing
From the vacuum tube to the antitrust trial, here's one take on the events of the century.
http://www.pcworld.com/pcwtoday/article/0,1510,14350,00.html
Article: Overcoming information overload
SO YOU START A typical workday and wade through 75 to 100 e-mail messages. Or perhaps more. Then you move on to voice mail, which is limited, thankfully, to accepting only 15 messages since you last checked it. Afterward, it's time to check a handful of Web sites and repeat this process several times a day. Mail and other paper-based notices also need your daily review. Meanwhile, your pager, personal digital assistant, and cell phone keep constituents in constant contact with you, and you with them. At some point, it can all seem like too much to handle.
http://www.infoworld.com/articles/ca/xml/00/01/10/000110caoverload.xml
Telecommunications Industry
Site: Dictionary of PC Hardware and Data Communications Terms
Searchable on-line glossary of telecom terms. Very comprehensive with detailed descriptions and explanations.
http://www.oreilly.com/reference/dictionary/
Article: Consortium to power up broadband
THE RACE to deliver broadband services directly into businesses and homes will heat up this summer when a new nationwide network created in secret by an alliance of utility companies and computer industry giants will offer voice, data, and television services.
http://www.infoworld.com/articles/hn/xml/00/01/24/000124hnutility.xml
Useful Utilities
ClipTrak (free!)
PC Magazine free utility that runs in the background and saves a list of text items (Sorry, graphics are not supported!) that get placed on the Clipboard. ClipTrak can then be activated (from a system tray icon) allowing you to select text that was previously on the Clipboard to paste into your current document. You can also build a list of frequently used text which can then be selected for pasting.
http://www.pcmag.com/article/0,,s%3D1478%26a%3D8083,00.asp
Dependency Walker (free!)
Update (version 2.0 -- still in beta) of a classic utility that will build a tree of all external modules required for an executable or DLL file. In addition, it shows which functions are imported from the dependent module, as well as which specific copy of the file on your hard drive is actually referenced. It's very useful when you're trying to track down a problem related to shared application files.
http://www.dependencywalker.com/
InfoRapid Search & Replace (free!)
Very fast text-search and replace utility. One of the nicest features is that it displays MS Word documents in their native format including highlighting of the target text. Clicking on found item displays the file in native format within the viewer. This utility supports "regular expressions" for grep gurus.
http://www.inforapid.com/html/searchreplace.htm
Productivity Tips
Starting Explorer with no drives expanded
Normally when you start Windows Explorer, it expands the folders on the root of the C: Drive. If you want it to start without expanding any drives, use the following command line (or, better yet, create a shortcut with this command line):
explorer /n, /e, /select, c:\
For additional information on Explorer command line switches, see Microsoft Support Knowledge Base article Q130510 (
http://support.microsoft.com/support/kb/articles/Q130/5/10.asp).Scroll through Word documents in real-time
In MS Word 97, if you use the "thumb" (the little button that shows in relative terms where you are in a document) on the scroll bar, the display of the page doesn't change until you release the thumb. By making the following registry change, the document display will scroll as you move the thumb.
Alternatively, you can save the following to a file with the
REGEDIT4
[HKEY_CURRENT_USER\Software\Microsoft\Office\8.0\Word\Options]
"LiveScrolling"="1"
Use words in your Outlook date and time fields
When you type the word "tomorrow" in a date field, Outlook interprets the word and automatically inserts the correct date. You can type words like "yesterday", "today", "next Friday", or "Christmas", and Outlook will insert the correct date. But this only works with the name of those holidays that fall on the same date every year, such as New Year's Day (i.e., "Mother's Day" won't work). If you type in the name of a holiday that's already passed, Outlook puts in the date for the current year, not the date for that holiday for the next year. To work around that, enter the date for the next year, including the year numbers, and press [Tab], then select the date and type in the holiday name. The correct date for the next year will be in the date box. You can also type in a block of time, such as 12 days, and Outlook determines what day is 12 days from today.
Add hard returns in Excel cells
When you need to add multiple lines of text in an Excel cell, you can use [Alt]+[Enter] to add a hard return between lines. (This is much easier than trying to add the right amount of space so that the text wraps correctly.)