Tuesday, November 5, 2013

Testing: Strategy and Plan

Test Strategy
A Test Strategy document is a high level document and normally developed by Project Manager/Test Manager. This document defines "Software Testing Approach” to achieve testing objectives. The Test Strategy is normally derived from the Business Requirement Specification document.
The Test Strategy document is a static document meaning that it is not updated too often. It sets the standards for testing processes and activities and other documents such as the Test Plan draws its contents from those standards set in the Test Strategy Document.
Some companies include the “Test Approach” or “Strategy” inside the Test Plan, which is fine and it is usually the case for small projects. However, for larger projects, there is one Test Strategy document and different number of Test Plans for each phase or level of testing.
Components of the Test Strategy document
  • Scope and Objectives
  • Business issues
  • Roles and responsibilities
  • Communication and status reporting
  • Test deliverability
  • Industry standards to follow
  • Test automation and tools
  • Testing measurements and metrices
  • Risks and mitigation
  • Defect reporting and tracking
  • Change and configuration management
  • Training plan
Test Plan
The Test Plan document on the other hand, is derived from the Product Description, Software Requirement Specification SRS, or Use Case Documents.
The Test Plan document is usually prepared by the Test Lead or Test Manager and the focus of the document is to describe what to test, how to test, when to test and who will do what test.
It is not uncommon to have one Master Test Plan which is a common document for the test phases and each test phase have their own Test Plan documents.
There is much debate, as to whether the Test Plan document should also be a static document like the Test Strategy document mentioned above or should it be updated every often to reflect changes according to the direction of the project and activities.
My own personal view is that when a testing phase starts and the Test Manager is “controlling” the activities, the test plan should be updated to reflect any deviation from the original plan. After all, Planning and Control are continuous activities in the formal test process.
  • Test Plan id
  • Introduction
  • Test items
  • Features to be tested
  • Features not to be tested
  • Test techniques
  • Testing tasks
  • Suspension criteria
  • Features pass or fail criteria
  • Test environment (Entry criteria, Exit criteria)
  • Test delivarables
  • Staff and training needs
  • Responsibilities
  • Schedule
 This is a standard approach to prepare test plan and test strategy documents, but things can vary company-to-company

Friday, September 13, 2013

Native,mobile Web or Hybrid


Native, mobile Web, or hybrid? For companies considering tapping into the mobility of their increasingly connected workforce with enterprise mobile solutions, that’s the million dollar question.
Before you can determine which option is best for your custom mobile development project, we think it’s important to understand a few basic fundamentals on the differences between native, hybrid and mobile Web applications.
Native 
Apps developed exclusively for specific mobile platform that can leverage all device capabilities.

The inherent benefits are obvious. Native applications can leverage the full array of features and functions available through the mobile device’s core operating system. Generally, they are faster, smoother and offer a significantly more fluid user experience than either Hybrid apps or mobile Web apps.

The main disadvantage of native app is you can’t run this app in other platforms. So you need more developers to build app in different plat forms. Learning time is more when compared to web and hybrid apps. Building native apps are little expensive.
Mobile Web
Apps implemented with HTML5 and JavaScript that operate entirely inside a mobile browser. Mobile Web apps offer an attractive option for companies that are looking to get into the Mobility game but don’t want to invest in building native applications across four different mobile platforms. Whether getting a new app up and running or maintaining or updating an existing mobile solution, with Mobile Web Apps everything is simple and inexpensive.
Hybrid

Apps that wrap a mobile web interface inside a native container
Today, technology changes so rapidly that most businesses require immense flexibility and scalability to adapt content, design and even application architecture, all on the fly. By deploying applications that rely on a robust combination of HTML5 Web technologies and native OS features, you preserve a large degree of control over the content and design of the solutions we build for mobile platforms.
 The main advantage of Hybrid app is cross platform. It saves the development cost and time. But the problem is less user control when compared to native apps. The performance is less when compared to native apps and touch sensing also varies.