The Latest

Branch Coverage for Arbitrary Languages Made Easy[article]

Branch coverage is an important measure of the thoroughness of testing. One can get coverage tools for mainstream languages (C, Ada) on mainstream platforms (Solaris, UNIX), but not for unusual languages (JavaScript) or running on nonstandard platforms (C in embedded systems). This paper shows how program transformation systems can install test probes in software systems easily. This means test coverage is possible for all kinds of software in all kinds of execution environments.

TechWell Contributor's picture TechWell Contributor
Speaking Process Improvement to Your Management[article]

Have you tried to persuade your management to buy into process improvement? It's a tricky business, fraught with obstacles that you may not foresee. If you've been frustrated, you might find some insights in this article to help you with future efforts. If you haven't been in that position yet, this article can help you prepare and perhaps increase your chances for success.

Ed Weller's picture Ed Weller
typical bug severity scale What Is a Defect Anyway?[article]

What is a defect? How do we define defects, and their significance in product development? Excerpted from a book-in-progress, this article explores the concept of defects, provides some background on competing agendas, and provides a model for developing a consistent strategy for classifying and addressing defects.

Kenneth Hass
Requirement #1: Ask Honest Questions[article]

To get good requirements, you have to ask good questions. But what makes good questions, and how can you use them to systematically uncover requirements? In this column, Becky Winant shares the art and science behind asking questions that work.

Becky Winant
Relationship between Testers and Developers in Real World Software Testing[article]

This paper covers the relationships between computer software developers and testers in the real world of a software life cycle. It stresses problems, solutions, and desired outcomes of human relations while dealing with artificial intelligence and creations of it. Examples provided show the real office experiences of the author and the behavior of different people during conflicts. The paper intends to focus on the fact that human relations problems covered and the solutions provided are perfectly do-able and feasible.

Lev Vigdorchik
status of test cases Challenge of Test Case Maintenance[article]

Maintaining test cases is a tough task when the product under test is changing constantly. This challenge was met by our team and this article explains our experience.

Sreeram Kishore Chavali's picture Sreeram Kishore Chavali
How to Make the Most of the Beta Testing Process[article]

You've just completed all of your scheduled testing, and had all the "great minds" in the company bless your application, but will it really function as the customer wants and expects it to in the field? The Beta Testing Process is the "Real World Test" and should be the software's last stop before the general release. During the Beta Process we want to find usability, configuration and defect issues not found during lab testing. I would like to demonstrate here how we strive to make the most of the Beta Testing Process for our development team as well as other related departments in our company.

David Fern's picture David Fern
Using Bug-Tracking Systems as Idea Repositories[article]

When unnecessary information is entered into bug-tracking systems, they are not as effective as they could be. In this article, Adam Kolawa outlines what type of information should be entered into a bug-tracking system during development and after code freeze, and how to use the information when designing future product versions.

TechWell Contributor's picture TechWell Contributor
Extreme Programming Considered Harmful for Reliable Software Development[article]

This paper presents data collected on extreme programming (XP) and how this method relates to traditional software engineering practices. The author presents reasons—albeit no scientific proofs—why extreme programming may be harmful to a reliable software development project. The paper also discusses why Extreme Programming fails to provide answers to significant questions that contemporary software development methods have to answer. The Extreme Programming hype, and its variant in the "Agile Methods" packaging, currently dominates the software development scene and should be investigated and evaluated before assuming it is the best method for a particular project. This paper is an attempt to contribute to the discussion.

Gerold Keefer
Three Elements of Software Quality[article]

This article comprises three short pieces discussing 1) certifications do not guarantee quality code or product, 2) the importance of testing the product instead of testing the process, and 3) the natural flow of development, including verification and validation.

Paul Tsuda
The Y2K Bust[article]

Where were you on 31 December 1999? Celebrating on a beach in New Zealand, one of the first places in the world to experience the new millennium? Or in your office, hastily testing changes to old computer systems (with all vacation requests denied for a period of six weeks before and after New Year's Eve)? After all, the cover of BusinessWeek magazine had used the term "Global Financial Meltdown" to describe the concern. With hindsight, what have we learned about testing and quality assurance from the year 2000 problem (also called the Y2K or Millennium Bug)? For the last two years nobody has wanted to talk about it-but it should now be safe to bring up the topic.

Ross Collard's picture Ross Collard
Client-Server application graph Validating Mission Critical Server Software for Reliability[article]

This paper talks about testing for reliability of server software, and highlights the challenges in planning, automation, execution, collection, and interpretation of the data for determining reliability as well as some practical challenges/difficulties faced. It also talks about the relationship of reliability testing to other areas of testing such as performance and functionality.

Fightin' Words[article]

Do you ever shy away from using terms your coworkers or organization may have come to regard negatively—perhaps words like "process" or "CMM" or "inspections"? Why is it not okay to call a spade a spade—or a process a process—for fear of scaring team members who don't understand or value contemporary software engineering practices? In this week's column, Karl Wiegers explains why he doesn't play those games (and how he gets away with it).

Karl E. Wiegers
White Paper: Superfast Design & Prototyping for the iSeries 400[article]

Few development projects deliver as promised - exceeding budget, missing objectives or failing to satisfy expectations. A consistent feature is that users frequently do not understand the system being developed for them. Too often, the result is dissatisfaction and costly rework.

Applications prototyping offers the best chance of avoiding such scenarios. This white paper will look at a solution for developing an effective prototype that users can actually work with during development.

TechWell Contributor's picture TechWell Contributor
How to Find the Level of Quality Your Sponsor Wants[article]

This paper's purpose is to help you recognize customer needs - whether stated or implied - and turn them into an effective software testing process. It explores requirements gathering techniques, test efficiency, communication skills, and persuasion tactics.

Sue Bartlett

Pages

StickyMinds is a TechWell community.

Through conferences, training, consulting, and online resources, TechWell helps you develop and deliver great software every day.