Active TopicsActive Topics  Display List of Forum MembersMemberlist  CalendarCalendar  Search The ForumSearch  HelpHelp
  RegisterRegister  LoginLogin


 One Stop Testing ForumSoftware Testing @ OneStopTestingBeginners @ OneStopTesting

Message Icon Topic: Software Testing-Testing Techniques

Post Reply Post New Topic
Author Message
tanushree
Senior Member
Senior Member
Avatar

Joined: 04Apr2007
Online Status: Offline
Posts: 2160
Quote tanushree Replybullet Topic: Software Testing-Testing Techniques
    Posted: 27Oct2007 at 6:10am

Software Testing-Testing Techniques

1. Formal Technical Review in Software Testing A formal technical review is conducted by the software quality assurance group. A review typically examines only a small part of the software project. Also, only one developer is usually responsible for the artifact.
The artifact is examined on various levels, the first of which is for compliance with the requirements of the software. This includes things like function and logic as well as implementation.
The artifact must also conform to the standards of the process used on the project. This ensures that all artifacts of the project are developed in a uniform manner.
Typically a review will last 2 hours. The review may consist of walk-throughs, code inspections or any other examination. Since the purpose of a review is to find errors, a review can be difficult to control. Care must be taken to ensure that no hard feelings occur as a result.
2. Code Walkthrough in Software Testing A source code walkthrough often is called a technical code walkthrough or a peer code review. The typical scenario finds a developer inviting his technical lead, a database administrator, and one or more peers to a meeting to review a set of source modules prior to production implementation. Often the modified code is indicated after the fact on a hardcopy listing with annotations or a highlighting pen, or within the code itself with comments.
A code walkthrough is an effective tool in the areas of quality assurance and education. The developer is exposed to alternate methods and processes as the technical lead and database administrator suggest and discuss improvements to the code. The technical lead is assured of an acceptable level of quality and the database administrator is assured of an acceptable level of database performance. The result is better performance of the developer, his programs, and the entire application.
Despite all the benefits of source code walkthroughs, few organizations implement and enforce them as a shop standard. Many excuses are given, but each has a practical solution.

  • Benefits

  • Improved Code Quality

  • Improved code quality is ensured by the enforcement of coding standards.

  • Improved Application Performance
  • is ensured by the review of all database access paths by the DBA and technical lead, and the improvement/removal of questionable coding practices.
  • Improved Developer Performance
  • is ensured by the mentoring of the developer by the DBA and technical lead, the discussion of coding style and technique. Peer reviews are an important component of a continuing training plan. How else can a developer hone his skills? Few training vendors offer formal sessions for developers with more than five years of experience, and fewer employers take advantage of those sessions.
  • Excuses
  • Here are a few of the many excuses offered for not enforcing code walkthroughs as a shop standard.
  • Volumes of data
  • Technical leads and database administrators are unwilling to spend time wading through large Natural and COBOL listings searching for a few simple source changes. Database administrators need to see quickly what database accesses were added or changed.
  • Deleted code
  • Deleted code cannot be reviewed, but leaving the code in place, converted to comments, can render illegible an otherwise well-structured module.
  • Manual effort,/li> The amount of effort required by the developer is significant to create useful documentation for a technical walkthrough. The manual procedures involved are difficult, tedious, time-consuming, and error-prone
  • Lack of Consistency
  • There must be consistency. If code is accepted by one reviewer but rejected by another, or accepted on one occasion but rejected on another, developers will become confused and frustrated. There must be consensus among the reviewers.
    Once standards are published, developers can ensure compliance, allowing a much more positive and less time-consuming review process. Reviewers can direct more attention to unusual and complex coding techniques.
  • Developers are reluctant to be involved
  • Without training, experience, and focus, a technical lead can allow a code walkthrough to degrade into something resembling a lynching. Constructive criticism deteriorates into destructive criticism.
    The process must be considered by all parties an opportunity to train the developer, enlighten the technical lead and database administrator, and maintain or improve the quality and performance of the application system. It should be a win-win situation for all persons involved.
    3. Code Review in Software Testing
    Code Reviews are a great way to improve both your software and your developers. Traditionally code reviews or peer reviews take place in a regular basis, once a week for instance. Developers swap code they produced during the week and go through a checklist to look for bugs security problems, performance issues, adherence to coding standards, and other issues. The developer then creates a report and goes over what he or she has found in the peer's code. This process allows the developers to learn the tricks other developers have attained over the years.
    Traditional code reviews certainly do a lot to improve the quality of the software developed, and the developers themselves, but they certainly also take quite a bit of time. Many of the issues can be easily picked up by an automated code review tool such as CFDEV's tool for reviewing ColdFusion (CFML) code. CFDEV's tool also allows you to easily write your own rules most rules can be written in just 4 lines of CFML code. In addition each issue the reviewer find has an associated document explaining why, and how to fix the issue.
    While automated code review tools can cut down the time it takes to review code, there are certain tasks that an automated tool just can't do, such as algorithm design, or logic issues. To get the full benefits of code reviews you should still involve the human eye.
    4. Code Inspection in Software Testing
    Software inspections have long been considered to be an effective way to detect and remove defects from software. However, there are costs associated with carrying out inspections and these costs may outweigh the expected benefits.
    It is important to understand the tradeoffs between these costs and benefits. We believe that these are driven by several mechanisms, both internal and external to the inspection process. Internal factors are associated with the manner in which the steps of the inspection are organized into a process (structure), as well as the manner in which each step is carried out (technique). External ones include differences in reviewer ability and code quality (inputs), and interactions with other inspections, the project schedule, personal calendars, etc. (environment).
    Most of the existing literature on inspections have discussed how to get the most benefit out of inspections by proposing changes to the process structure, but with little or no empirical work conducted to demonstrate how they worked better and at what cost.
    We hypothesized that these changes will affect the defect detection effectiveness of the inspection, but that any increase in effectiveness will have a corresponding increase in inspection interval and effort. We evaluated this hypothesis with a controlled experiment on a live development project using professional software developers.
    We found that these structural changes were largely ineffective in improving the effectiveness of inspections, but certain treatments dramatically increased the inspection interval. We also noted a large amount of unexplained variance in the data suggesting that other factors must have a strong influence on inspection performance.
    On further investigation, we found that the inputs into the process (reviewers and code units) account for more of the variation than the original treatment variables, leading us to conclude that better techniques by which reviewers detect defects, not better process structures, are the key to improving inspection effectiveness.



Post Resume: Click here to Upload your Resume & Apply for Jobs

IP IP Logged
Post Reply Post New Topic
Printable version Printable version

Forum Jump
You cannot post new topics in this forum
You cannot reply to topics in this forum
You cannot delete your posts in this forum
You cannot edit your posts in this forum
You cannot create polls in this forum
You cannot vote in polls in this forum



This page was generated in 1.121 seconds.
Vyom is an ISO 9001:2000 Certified Organization

© Vyom Technosoft Pvt. Ltd. All Rights Reserved.

Privacy Policy | Terms and Conditions
Job Interview Questions | Placement Papers | Free SMS | Freshers Jobs | MBA Forum | Learn SAP | Web Hosting