QA InfoTech , Independent Software Testing Service Logo
jobs@qainfotech.com
Sales: Contact Sales +1 469-759-7848 sales@qainfotech.com
QA Infotech your Software testing partner
Menu
  • About
    • Team
    • Overview
    • Values and Culture
    • QA InfoTech Foundation
    • Careers
  • Services
    • QUALITY ENGINEERING
      • Functional Testing
      • Automation Testing
      • Mobile Testing
      • Performance Testing
      • Accessibility Testing
      • Usability Testing
      • Security Testing
      Quality ASSURANCE
      • Globalization, Translation & Localization Testing
      • Courseware & Content Testing
      • Crowdsourced Testing
      • Cloud Testing
      Software Development
      • eLearning
      • Data Sciences
      • Accessibility Development
      • Mobility Solutions
      • Web Development
      • Front End Frameworks
      • Salesforce Development
      • Cloud Solutions
      • Enterprise Content Management
      • Odoo
      • ServiceNow
      • AS400
      Digital Assurance
      • Digital Assurance
      • Data Sciences & Analytics
      • Quality Consulting & Test Center of Excellence (TCOE)
      • SAP Testing
      • Selenium Test Automation
      • Blockchain Testing
  • Verticals
    • e-learning
      List Start
    • e-Learning
    • Publishing
    • BFSI
    • Health Care
    • Media
    • Travel
    • Retail
    • Government
    • OpenERP
    • List Stop
  • Knowledge Center
    • Case Studies
    • White Paper
    • Webinars
    • Blogs
  • WebinarsNew
  • News
    • News
    • Press Release
  • Contact
  • Get A Quote
  • Home
  • »

Yearly Archives: Knowledge CenterAugust 2010

Assuring Quality in Third-party Code Integrations
12 Aug, 2010

Assuring Quality in Third-party Code Integrations

  • QA InfoTech
  • Blogs
  • no comments

Software development has become a very integrated activity over the last decade, where instead of one large piece of code developed in-house, a lot of small pieces flow and fall in place like pieces of a puzzle, to shape the E2E product. Such integrations and collaborations have been necessitated by a lot of drivers in the market such as: Need for faster time to market, leverage domain expertise from specialists rather than building everything in house, feature rich product, technology advancements that make such integrations seamless and possible. For a long time now, cross group collaborations within a company have been encouraged to promote resident experts in a specific area, ease of code maintenance, modular functionality etc. For e.g. in my projects at large ISVs, I have almost always seen such integrations in areas such as login functionality, payment processing, installation and setup. In the more recent years such integrations have extended bounds with ISVs now willing to integrate external code bases with theirs to compete and maintain an edge in the marketplace.

Besides some areas I’ve mentioned above, a few others that have always been excellent targets for external interfacing include analytics and reporting. Large ISVs have quite heavily depended on companies such as Omniture, Web Trends to incorporate core reporting modules into their software functionality. The world of application development is now opening several doors for such external integrations. Having looked at some of the striking advantages such integration brings, one cannot miss the inherent challenges in such third party collaborations. Let’s take a quick look at some of those and also the associated mitigation strategies.

Challenges and some mitigation strategies:

Challenge: Quality of Code – This is a huge challenge since you have a third party team that is working on giving you the source code. Very often, product teams’ face challenges in imbibing coding standards within their own team. In such scenarios, how do you ensure code quality from an external team where you do not have complete visibility into and control on?

Mitigation Strategy:

  • Define clear protocols and coding standards to use and ensure they are consistent with what is being used in house
  • Define metrics for measuring code quality and associate them with Service Level Agreements (SLAs) to reward (for met and exceeded expectations) and penalize (for expectations not met)
  • Define and implement quality gates/checkpoints, before integrating third party code into your code base

Challenge: Getting the external team to understand your business requirements, time, cost and quality constraints and effectively customize their code to meet your needs

Mitigation Strategies:

  • Involve the external team sooner than later in your product development life cycle and engage them in all important business and product conversations, including any field trips, client visits
  • Encourage free flowing yet managed communication channels between your business team and external team. I say managed as unless this is monitored, the entire flow can soon become very haphazard
  • Ensure transparency of communication at all times and insist such interactions from their end also to understand their product timelines, challenges if any
  • Get the third party team to spend adequate cycles on using your product hands on; unless this is done, they will only get a theoretical view of the product and will not be able to deliver a quality integration piece

Challenge: Defect Management – Disconnected defect management practices often result in huge gaps in timelines to fix defects, incomplete defect fixes, ineffective hand offs between teams etc. all of which lead to delays in project timelines and increase in project total costs

Mitigation:

  • Establish clear defect management protocols at the start of the project including acceptable timelines, entities involved in the hand shake between the two teams, tools to use etc.
  • Define service level metrics around number of defects, type of defects, severity of defects, defect fix timelines, regressions etc. at various stages in the product lifecycle
  • Get the third party team to spend adequate cycles on using your product hands on; unless this is done, they will only get a theoretical view of the product and product development and defect fixes will not be comprehensive

Challenge – Maintenance of external code, post the initial release is often a huge challenge

Mitigation:

  • Think about code sustenance upfront. If you want the external team to continue to own the code, understand and align their release cycles to yours, so their code is up-to-date in user features and functionality, use of technology, defect management etc.
  • If code is to be transferred to your team, ensure you have the right team identified for training and take over; have one person assigned from the external team for future questions and clarifications

Having talked about some of the core challenges and mitigation strategies, let’s now look at some vital quality gates that need be implemented in the product team in addition to the quality checks done by the external team before and after code integration.

  • Static analysis of code – This is important to ensure the code meets the standards defined by the product team and is safe and free of vulnerabilities before it can be integrated main stream. Code needs to be scanned especially from a security standpoint at this static level, to ensure no malicious snippets are being integrated. Such static analysis can either be done manually (not a scalable and fool proof option though) or with the use of home grown or commercial code scanners. Such scanners run through all possible execution paths of the code and spit out issues / errors (including critical ones), warnings, vulnerabilities etc. This is a great checkpoint before code integration happens and is also one of the right situations at which Service Level Metrics can be enforced

Dynamic Analysis of code: At the dynamic level when the code is run, the following checks become important at the black and white box levels:

  • API level checks – automated tests at the interface level and database level to ensure interfaces work fine, are secure, have the right schemas and are consistent with the core product architecture and technology
  • Performance Testing – check for configuration files, setup files etc. to ensure the right parameters are being used. If the integrated external code is not on par with the core code, it can often pull down the performance of the entire product. This is also  one of the right stages for the product team to mandate SLAs to the external team
  • Functional testing and UI testing at the black box level to ensure the E2E functionality works fine, the UI is consistent overall and that the integration points are not apparent to the end user. Solid integration testing herein needs to be undertaken to ensure a seamless end user experience. If the external team has done specific customizations to align with your product line, such customizations also need to be tested for
  • Security Testing – This is one of the most important aspects to check for to ensure no vulnerabilities have been introduced, especially when third party code (on which the product team may not have complete control) is being integrated into your mainstream code

In a nutshell, third party code integrations are becoming the need of the day to enhance your core product’s functionality. Do not be intimidated by the challenges it poses. Be aware of them and attack them at the very early stages to fully benefit from such external code; for which, as you have seen above, quality assurance right from the early stages is a very important wand!

Defect Metrics – An indicator of quality of product under test
12 Aug, 2010

Defect Metrics – An indicator of quality of product under test

  • QA InfoTech
  • Blogs
  • no comments

In an earlier blog a few weeks back, I had talked about defect metrics that help determine the quality of test effort. In the current blog, I will be discussing what defect metrics will serve as good indicators of the quality of product under test. While both these sets of metrics are equally important to track and base important test management decisions on, this current set is all the more important in helping a test manager decide “whether the test team is ready to sign off on the product under test”. This set of metrics bring in objectivity in making this decision more accurate and reliable, rather than when based on subjective factors. Also, as a best practice, I would recommend using these metrics on an ongoing basis (say once in 15 days or so) to keep track of how the product quality is shaping up. This will help the test management proactively recommend any corrective actions to the product team as opposed to reactively accepting poor quality later in the game. Here we go, with the magic set of metrics that I have been alluding to.

  1. Number and timing of high priority and severity bugs reported – High priority and severity bugs typically indicate a major crash or failure in product functionality. These strongly denote the health of the product regardless of when in the product life cycle they are reported. These are especially critical warranting a closer look at product quality, if found later in the product life cycle. The product triage team pays very close attention to high priority and severity bugs throughout the life cycle for these right reasons, and in addition, if the test manager notices any patterns/trends such as high pri/sev bugs concentrated in one module, showing up too frequently, showing up too late in the game etc. it would be worthwhile to further analyze and report findings to the product triage team.

 

  1. Number of regressions – The higher the number of regressions, the more the product quality needs attention to. Such regression numbers often indicate the performance of the development team, but more importantly their performance is directly indicative of the product quality. Regressions are often strong indicators of the comprehensiveness and fool-proofness of bug fixes that are checked in. This is a very good discussion point the test manager can take to the round table to highlight the need to improve product quality

 

  1. Number of build breaks or Build Verification Test (BVT) failures – Since these are basic tests that are performed either by the development or test team, to qualify a build for further testing, these are often tests that represent the product’s core functionality or the bare minimum “must run scenarios”. Also, these tests once built at the beginning at the product life cycle remain quite static and only tend to grow with additional functionality that gets developed. Given that these are tests that are run over and over with every newly released build, it is an expectation to hit 100% BVT pass percentage in all builds. Frequent build breaks not only waste the product team’s time in resolving them but more importantly are indicative of the poor build quality that needs immediate attention.

 

  1. Number of functional, performance and security bugs – Bugs of any and all types are valuable to help improve product quality. However, the ones that are most indicative of product quality are bugs that are reported in areas of product functionality, performance and security. Cosmetic bugs such as UI, usability etc. are also important to be looked at but often times these are the ones that can be lived with, whereas this other category of bugs discussed here are ones that cannot be compromised or will at least need serious collaborative consensus before product release. The test manager should specifically focus on these bugs and probably further dissect this data from various views such as: number present in a given module, a combination of these bugs in a given module, priority/severity of these bugs, when in the product life cycle do these show up, potential regressions these may introduce etc.

 

  1. If product is post v1, number of post release patches, bugs – If the product under test is not a V1 product there will be several useful data points from past releases that the test manager can leverage to track product quality in the current release, which include how the product fared in past releases (both pre and post release), the number and kind of emergency patches that were required post release, defect metrics from past releases etc. as a start point.

Herein above, I have discussed core metrics that can be tracked and acted upon to monitor and improve product quality. Obviously, this is by no means an exhaustive list but is a great start towards having the test team move towards the driver’s seat in proactively playing an important role in owning product quality. Feel free to send me your comments and experiences from your test and/or development assignments, which helped you ship a product of great quality.

Gaming Technology in Education – a new career option in Software Testing?
10 Aug, 2010

Gaming Technology in Education – a new career option in Software Testing?

  • QA InfoTech
  • Blogs
  • no comments

With strong support from the government and private companies, Education is one of the core domains where a lot of research has been going on in the US, over the last few years. There is a greater push to strengthen the educational foundation by leveraging technology in possible places. Obama’s government has pledged $118 million to be raised through private companies to fund for educational research. As recent as in July 2011, Microsoft has invested $15 million for research in use of gaming in education.

Couple of promising avenues to introduce technology in education is the use of videos and games. These are being viewed as great tools to make education more effective without overwhelming the learning process. Some facts to substantiate this are as seen below (Source: several online sources call out these stats, dating back to 2006, from an original research conducted by ESA – Entertainment Software Association):

1. 35% American parents play games and 66% believe games bring their families closer together
2. 69% of American households play computer and video games
3. Gaming surpasses age bounds. Average gamer’s age is 33.

With this level of penetration that games and video have in our daily lives, educational researchers are seeing clear benefits of introducing them in enhancing learning for all age groups. Major benefits they see include: Improved analytical thinking, problem solving skills, communication and articulation skills, subject matter retention and attention span. With increase in use of software games and video in education, comes in a whole new career avenue for software testers. What can you as a software tester do to prepare yourself to fit such jobs and what can software testing companies do to build a line of expertise in this area?

There are three parts to building a career in *Testing for Educational Gaming* viz. Testing, Educational domain knowledge, Gaming domain knowledge. Before you invest time, effort and money to train yourself in this space, there are some core traits to self-evaluate yourself on, to candidly analyze your fitment for this job. Such traits include: Analytical skills, passion for games and video entertainment, interactive working, a perennial learner and problem solver. If you see a pattern here, some of these are core traits for a regular software tester as well. Of the three parts I’ve outlined above, I would prioritize them in the following order (highest to lowest), for you to work on, to be successful in this career: Gamer, Tester, Educator. My pick for this order is because once you have the core gaming skills, you have automatically acquired some core testing skills as well. Typically a great gamer is a great tester to start off with, as he is always looking for ways to win over the game he is playing, exploring all routes to score the most, focusing on finishing the game in the fastest possible time etc. These translate to the person really understanding the functionality and the performance of the game and a core aspect of out of box thinking which goes a long way in grooming him as a successful tester. So, once you are a great gamer to begin with the other pieces of the puzzle automatically fall in place. If one works on this foundation to strengthen his/her software testing skills and also builds core domain knowledge in the specific educational discipline that he/she would be working on, the future looks very bright. Educational domain knowledge can often be built on the job, unless the job calls for some very specific expertise with people who have been formally trained in that area. One can pursue this job even part time, by working a few hours which can be beneficial to both the employer and the employee by providing time and cost flexibility, yet bringing in the domain knowledge needed to test the product.

As for a software testing company looking to build this expertise, I would strongly recommend hiring avid gamers and train them on software testing. At QA InfoTech, we’ve found this route very successful in several areas of testing in the past – one being, building a team to test call center software, where we actually hired support engineers and trained them on software testing. Clearly this is a robust strategy to build such a talent pool in a company. Gaming in Education is an up and coming trend with a lot of evolution in the offing this coming decade. This is definitely an area that will pay off if invested in, at this point of time.

Site Categories

  • Accessibility Testing (29)
  • Automation Testing (27)
  • Banking Application Testing (2)
  • Blockchain (2)
  • Blogs (378)
  • Business (44)
  • Case Studies (37)
  • Cloud Testing (5)
  • Company (16)
  • Compatibility Testing (1)
  • DevLabs Expert Group (25)
  • DevOps (2)
  • Dot Net (27)
  • E-Learning testing (3)
  • Events (6)
  • Fun at Devlabs (1)
  • Functional Testing (4)
  • Healthcare App Testing (10)
  • Innovation (5)
  • Java (3)
  • Job Openings (31)
  • Mobile Testing (20)
  • News (144)
  • News & Updates (7)
  • Open Source (9)
  • Our-Team (9)
  • Performance Testing (24)
  • Press Releases (37)
  • QA Thought Leadership (3)
  • Salesforce App Development (2)
  • Security Testing (16)
  • Software Testing (37)
  • Testimonials (24)
  • Translation & Globalization Testing (10)
  • Uncategorized (3)
  • Usability Testing (1)
  • Webinars (26)
  • White Papers (35)
  • Popular
  • Recent
  • Tags
  • Zend Framework April 16, 2013
  • Effective Regression Testing Strategy for Localized Applications Effective Regression Testing Strategy for Localized Applications March 23, 2015
  • Moving from a commercial to an open source performance testing tool August 12, 2015
  • 3 Tier Architecture in .Net Framework March 21, 2013
  • Zend at QAIT Devlabs March 26, 2013
  • Key Focus Areas while Testing a Healthcare App Key Focus Areas while Testing a Healthcare App September 18, 2020
  • Need for the Right Performance Testing Strategy for your Mobile App Need for the Right Performance Testing Strategy for your Mobile App September 12, 2020
  • Key Points to Remember Before Starting Salesforce Customization Key Points to Remember Before Starting Salesforce Customization September 8, 2020
  • Top 5 Automation Testing Tools for Mobile Applications Top 5 Automation Testing Tools for Mobile Applications September 2, 2020
  • Improve Salesforce Application Performance Leveraging Platform Cache using Lightning Web Component Improve Salesforce Application Performance Leveraging Platform Cache using Lightning Web Component August 28, 2020
  • Jobs - 13
  • Hiring - 13
  • mobile app testing - 8
  • performance testing - 7
  • accessibility-testing - 6
  • #AccessibilityTesting - 6
  • #PerformanceTesting - 6
  • automation testing - 5
  • accessibility - 4
  • #PerformanceTestingServices - 4
  • Performance Testing Services - 4
  • mobile - 3
  • testing - 3
  • functional testing - 3
  • agile cycle - 3
  • DevOps - 3
  • performance - 3
  • software testing services - 3
  • data analytics - 3
  • #SoftwareTesting - 3
  • #TestAutomation - 3
  • #AppSecurity - 3
  • #SecureBankingApps - 3
  • #TestingBankingApplications - 3
  • #SoftwareTestingStrategy - 3

Site Archives

  • September 2020 (4)
  • August 2020 (9)
  • July 2020 (15)
  • June 2020 (9)
  • May 2020 (13)
  • April 2020 (13)
  • March 2020 (23)
  • February 2020 (7)
  • January 2020 (18)
  • December 2019 (9)
  • November 2019 (10)
  • October 2019 (8)
  • September 2019 (9)
  • August 2019 (6)
  • July 2019 (4)
  • June 2019 (7)
  • May 2019 (18)
  • April 2019 (15)
  • March 2019 (5)
  • February 2019 (1)
  • January 2019 (5)
  • December 2018 (3)
  • October 2018 (4)
  • August 2018 (4)
  • July 2018 (15)
  • June 2018 (1)
  • May 2018 (3)
  • April 2018 (7)
  • March 2018 (5)
  • February 2018 (15)
  • January 2018 (3)
  • December 2017 (8)
  • November 2017 (13)
  • October 2017 (19)
  • September 2017 (13)
  • August 2017 (11)
  • July 2017 (7)
  • June 2017 (6)
  • May 2017 (5)
  • April 2017 (2)
  • March 2017 (6)
  • January 2017 (3)
  • December 2016 (7)
  • October 2016 (3)
  • September 2016 (3)
  • August 2016 (6)
  • July 2016 (4)
  • June 2016 (3)
  • May 2016 (6)
  • April 2016 (3)
  • March 2016 (7)
  • February 2016 (3)
  • January 2016 (3)
  • December 2015 (20)
  • November 2015 (2)
  • October 2015 (28)
  • September 2015 (4)
  • August 2015 (2)
  • July 2015 (14)
  • June 2015 (2)
  • May 2015 (2)
  • April 2015 (5)
  • March 2015 (18)
  • February 2015 (11)
  • January 2015 (4)
  • December 2014 (3)
  • November 2014 (4)
  • October 2014 (6)
  • September 2014 (7)
  • August 2014 (6)
  • July 2014 (7)
  • June 2014 (6)
  • May 2014 (4)
  • April 2014 (7)
  • March 2014 (7)
  • February 2014 (8)
  • January 2014 (7)
  • December 2013 (3)
  • November 2013 (6)
  • October 2013 (6)
  • September 2013 (10)
  • August 2013 (3)
  • July 2013 (4)
  • June 2013 (6)
  • May 2013 (3)
  • April 2013 (12)
  • March 2013 (6)
  • February 2013 (2)
  • January 2013 (1)
  • December 2012 (2)
  • November 2012 (3)
  • October 2012 (3)
  • September 2012 (5)
  • August 2012 (2)
  • July 2012 (6)
  • June 2012 (1)
  • May 2012 (2)
  • April 2012 (3)
  • March 2012 (8)
  • February 2012 (4)
  • January 2012 (3)
  • December 2011 (1)
  • November 2011 (4)
  • October 2011 (3)
  • September 2011 (2)
  • August 2011 (3)
  • June 2011 (4)
  • May 2011 (1)
  • April 2011 (4)
  • February 2011 (1)
  • January 2011 (1)
  • October 2010 (2)
  • August 2010 (4)
  • July 2010 (2)
  • June 2010 (3)
  • May 2010 (3)
  • April 2010 (1)
  • March 2010 (5)
  • February 2010 (1)
  • January 2010 (2)
  • December 2009 (3)
  • November 2009 (1)
  • October 2009 (2)
  • July 2009 (1)
  • June 2009 (2)
  • May 2009 (2)
  • March 2009 (2)
  • February 2009 (4)
  • December 2008 (2)
  • November 2008 (1)
  • October 2008 (1)
  • September 2008 (1)
  • August 2008 (2)
  • May 2008 (1)
  • February 2008 (1)
  • September 2007 (1)
  • August 2007 (1)
  • May 2007 (2)
  • June 2006 (1)

Tag Cloud

#AccessibilityTesting #AppSecurity #AutomationTesting #MobileAppTesting #MobileTesting #PerformanceTesting #PerformanceTestingServices #SecureBankingApps #SoftwareTestAutomation #SoftwareTesting #SoftwareTestingStrategy #TestAutomation #TestingBankingApplications .NEt accessibility accessibility-testing agile cycle automation automation testing BigData cloud computing cloud testing data analytics DevOps education functional testing functional testing services globalization Hiring Jobs localization testing mobile mobile app testing Mobile Testing Offshore QA Testing performance performance testing Performance Testing Services Security testing services Selenium Test Automation software testing software testing services technology testing xAPI

Post Calendar

August 2010
MTWTFSS
« Jul Oct »
 1
2345678
9101112131415
16171819202122
23242526272829
3031 

About QA InfoTech

Q A QA InfoTech is a C M M i CMMi Level III and I S O ISO 9001: 2015, I S O ISO 20000-1:2011, I S O ISO 27001:2013 certified company. We are one of the reputed outsourced Q A QA testing vendors with years of expertise helping clients across the globe. We have been ranked amongst the 100 Best Companies to work for in 2010 and 2011 & 50 Best Companies to work for in 2012 , Top 50 Best IT & IT-BMP organizations to work for in India in 2014, Best Companies to work for in IT & ITeS 2016 and a certified Great Place to Work in 2017-18. These are studies conducted by the Great Place to Work® Institute. View More

Get in Touch

Please use Tab key to navigate between different form fields.

This site is automatically   protected by reCAPTCHA and the Google Privacy Policy and Terms of Service apply.

Services

  • Functional Testing
  • Automation Testing
  • Mobile Testing
  • Performance Testing
  • Accessibility Testing
  • Security Testing
  • Localization Testing
  • Cloud Testing
  • Quality Consulting

Useful Links

  • Blogs
  • Downloads
  • Case Studies
  • Webinars
  • Team
  • Pilot Testing
  • Careers
  • QA TV
  • Contact

Office Locations

Michigan, USA
Toronto, Canada
Noida, INDIA ( HQ )
Bengaluru, INDIA
Michigan, USA

  • 32985 Hamilton Court East, Suite 121, Farmington Hills, Michigan, 48334
  • +1-469-759-7848
  • info@qainfotech.com

Toronto, Canada

  • 6 Forest Laneway, North York, Ontario, M2N5X9
  • info@qainfotech.com

Noida, INDIA ( HQ )

  • A-8, Sector 68 Noida, Uttar Pradesh, 201309
  • +91-120-6101-805 / 806
  • info@qainfotech.com

Bengaluru, INDIA

  • RMZ Ecoworld, Outer Ring Road, Bellandur, Bengaluru, Karnataka, 560103
  • +91-95600-00079
  • info@qainfotech.com

Copyright ©2020 qainfotech.com. All rights reserved | Privacy Policy | Disclaimer

Scroll
QA InfoTech logo
  • About
    ▼
    • Team
    • Values and Culture
    • Overview
    • QA InfoTech Foundation
    • Careers
  • Services
    ▼
    • Software Development
      ▼
      • eLearning
      • Data Sciences
      • Accessibility Development
      • Mobility Solutions
      • Web Development
      • Front End Frameworks
      • Salesforce Development
      • Cloud Solutions
      • Enterprise Content Management
      • Odoo
      • ServiceNow
      • AS400
    • Functional Testing Services
    • Automation Testing Services & Tools
    • Mobile Testing Services
    • Performance Testing Services
    • Accessibility Testing Services
    • Usability Testing
    • Security Testing
    • Translation & Globalization Testing
    • Courseware & Content Testing
    • Crowdsourced Testing
    • Cloud Testing
    • Digital Assurance
    • Data Sciences and Analytics
    • SAP Testing
    • Selenium Test Automation
    • Blockchain Applications Testing
  • Verticals
    ▼
    • e-Learning
    • Health Care
    • Retail
    • Publishing
    • Media
    • Government
    • BFSI
    • Travel
    • OpenERP
  • Knowledge Center
    ▼
    • Case Studies
    • White Paper
    • Webinars
    • Blogs
  • WebinarsNew
  • News
    ▼
    • News
    • Press Release
  • Contact
  • Get a Quote
We use cookies to ensure that we give you the best experience on our website. If you continue to use this site we will assume that you are happy with it.Accept CookiesPrivacy policy