Saturday 8 November 2014

Planning Phase
At this stage, the product is defined by the team of Engineers, Marketers and Sales Staff. Hence, testing approach at this phase is majorly focused on scrutinizing the idea rather than source codes.
Reviewers or Testers gather data with the help of following planning and design tools:
  • Comparative Product Evaluations: this approach aims to answer three questions:
    • What is the competitive advance of this product in the market?
    • How is the competitor doing better?
    • Which of their features can be included in this product?
Reviewers accumulate data from all the available sources like competitor’s product description, available demos, etc., and write their own product description with features, SWOT analysis and any other important information.
  • Focus Groups: in this approach, a Tester decides a topic, focus and scope of a discussion around the product. Then a group of participants representing a particular market segment are asked to give their unbiased opinions and views on that topic. The objective of such Focus Group Testing is to measure the current market demand and trend of the product.
  • Task Analysis: a test crucial for designing the user interface, task analysis is used by Reviewers to observe how the potential users can employ it to complete their tasks and meet their goals.
Design Stage
During this phase of Software Development, Designers work to figure out how to provide planned competencies of the product. Divided in two forms, Internal Design explains the internal working of the product, while the External Design describes the product from user’s perspective.
When it comes to software testing at the Design stage, a Tester needs to review how the system, built according to the design, will work. This can be done with the help of Review Meetings, that are used to identify problems with the design. It can be performed in three ways:
  • Walkthrough: the program is simulated to show how it will work, how different pieces of system will work, etc. to highlight the redundancies and missed details.
  • Inspection: this technique focuses on handling errors, conforming with the standards and other defined areas, etc.
  • Technical Review: in this review meeting, Testers discuss the issues related to the program and list down the problems that needs to be changed and redesigned.
Development Stage
During this stage software construction, defect diagnosis and prevention strategies are synchronized to reduce development risk, time and cost. The main objective of testing at this phase is to eliminate errors, increase quality as well as efficiency of the software, before it proceeds to the Quality Assurance phase.
Development Testing can be classified into different types, depending on the Company’s expectations:- data flow analysis metrics analysis, code coverage analysis, Static Code Analysis, Traceability, Peer Code Review, etc.
After Development but before Testing, developers use exhaustive Code Review Checklist. This checklist is used to check the Functionality of the codes along with exception handling and correct propagation of errors; their Readability and Maintainability including naming conventions, standard formatting, intuitive naming of variables, flexibility of the code and verifications of whether the code is configurable or not; and Performance or Efficiency that will address all language specific pitfalls, and will include areas like  Concurrency management, Memory leaks, Buffer overflows, Array indexing, pointer arithmetic, proper termination of threads, etc.
Click Labs is giving away a comprehensive Code Review Checklist, with separate sections on Functionality, Readability and Maintainability, and Performance or Efficiency. Register your Name and Email Now, and be the first one to receive this well detailed checklist for your smooth Code Reviewing.
Testing Stage
Last but not the least, Testing Phase includes the following tests listed below, that have been explained above:
  • Acceptance Test
  • Control Flow
  • Data Flow and Integrity Test
  • Stress Test
  • User Interface
  • Regression Test
  • Performance Test
  • Beta Test
  • Release Test

1 comment :