Sei sulla pagina 1di 8

View point

Five Commandments for Successful COTS


Package Testing

Abstract
Ineffective COTS implementation will cost you
Adopting commercial off-the-shelf (COTS) products or packages like ERP, CRM, and HR
management systems to fulfil a range of enterprise functions is a crucial decision involving
huge investment.
Most implementations do not identify testing as an independent function required during
the implementation of the COTS product, while others do not engage testing teams early
enough. Only a minority have a successful implementation without any testing-related
challenges. The rest discover that the eventual cost of implementation and on-going
maintenance have dented their overall business case.
Some worrying trends common to such testing going maintenance
failed implementations are: • Lack of sufficient testing coverage This point of view elaborates the rationale
• Expensive functional consultants during the testing phase leading to of independent testing for package
conduct testing defects showing up in UAT or, even implementation/upgrades and highlights
worse, in the production environment arguments for the benefit of the yet
• Business users’ involvement is higher
• Testing is not recognized during on- undecided.
than required for complementing

External Document © 2015 Infosys Limited


What is your strategy for
COTS/Package Testing? Base package
User requirements
does not require
The complexity and risk associated exhaustive testing are over & above
with implementation has a direct of its the gaps identified
functionalities for configuration &
correlation with the scope expected
irrelevant to the development
to be realized from the package.
context
Companies are increasingly realising
the role independent testing teams Package
with specialized testing skills can Testing
play in overcoming the risks specified Principles
above.
Package will
The package testing dogma Each
coexist with other
during implementation/on-going applications of the implementation
maintenance of a package can be laid enterprise & has unique degree
hence data flows of customization
out as follows:
in & out of the and configuration
package

• Testing is not required for the base - All products/packages should


When the COTS product is primarily
package, at least for the irrelevant be configured before use and
implemented for back-office
conditions/functionalities. customized to address user
systems (Oracle PeopleSoft,
requirements. Every package
- For instance, for an order creation Sterling Commerce, etc.), special
implementation is unique as a
and printing application created in considerations for improved
result of the degree to which
Microsoft Excel, it is not required performance and data security are
the product is customized and
to test the MS Excel product core critical inputs. In addition, data
configured.
functionalities like ‘Print Preview’ retention and disaster recovery are
and ‘Print Properties’ options. • The package will co-exist with other equally important requirements
applications/packages and data will when compared to the functional
• The gaps identified for configuration/
flow into or from the package. expectations.
development are different and are a
subset of what users require. - For example, an online retailer may This calls for specialist testers, who
use an order fulfilment package prioritize based on the identified risks,
- Taking the same example of MS
to fulfil the order received. To appreciate the changes from a user
Excel, for a requirement of the
share the shipping information perspective and accordingly implement
ability to always print the sales
with the carrier, this package has the right set of strategies.
orders in the landscape mode,
to be integrated with the delivery
the MS Excel core functionality of
systems of the carrier. Testing of
printing is a subset of the overall
the functionality for the changes is
workflow. It must be tested in
a job half done.
conjunction with the configuration
changes in the order creation and - For externally facing applications
printing application. developed on COTS (Oracle ATG,
Salesforce.com, etc.) emphasis
• Any package implementation/
of performance and security
operation will involve a degree of
requirements are self-explanatory
configuration and code development.
and rightly justified.

External Document © 2015 Infosys Limited


During the early stages, when different
components of the products are built
What needs to be Did we build it Did we build the
or configured and put together, it is
built? right? right ‘it’?
important to answer the question: “Did we
build it right?” Effective testing at this stage
tends to be more technical in nature. As Small and Simple Structured Test
the package reaches finishing stages, it is Test Levels Methodology
important to answer the question: “Did we
build the right thing?” Testing at this stage Systematic and System Testing Integration Testing
is more functional in nature. formal test
planning / design Test Data Data Migration
Therefore independent testing alone Management Testing
can provide appropriate answers to the
above questions. Following are the FIVE E2E Business Performance
Process Testing Testing
Commandments we identify from past Align Test Plan to
experience for successfully executing User Requirement Test Environments Security
independent package testing: (Not Gaps) Management Testing

1. Systematic and formal approach to


Test Strategy is not correct if these are not addressed
test planning and design

It goes without saying that any


package tester should have an in-depth
understanding of the out-of-the-box This is usually the case when functional In other words, the testing strategy will
features of the package. Identification of experts are conducting the testing. progress from system-level testing (testing
how specific requirements are met (core Planning the tests and designing the test limited to a screen, report or module, etc.)
vanilla, configuration or custom-coding cases against the requirements – and using to end-to-end business process testing.
within the product) is critical to ensure the gaps as reference – ensures that testing
a. The boundaries of system-level testing
that the out-of-the box features are aligns with the user’s expectations as
and end-to-end business process
appropriately tested. Hence, a systematic opposed to what IT had implemented.
testing are usually fuzzy and easily
and disciplined approach to planning the 3. Keep the levels of testing small and confused.
tests and designing the test conditions simple
b. Scope of test cases in system-level
employed by testers’ ensures optimal
Configuration includes setting up the testing can be defined as three-
balancing of testing timelines and gives a
business rules, access, workflow, and point testing. It starts where data
truly vetted product.
master data so as to ensure that the initialization is needed for a single user
2. Align test plan as per business package is usable in day-to-day operations. of system to do his/her work, moves
requirements and not as per the Most effective methods for testing such to where the single user conducts the
gaps identified changes would be all pairs / orthogonal activity in the system, and ends where
When packages are implemented for a array and boundary value analysis the single user is able to verify the
particular enterprise, requirements are techniques. The custom-code development results of his/her action.
analyzed for a good fit to the package and is fundamentally considered as traditionally
c. Scope of test cases in end-to-end
the gaps are captured as part of the gap developed. The right strategy is to keep
business process testing begins when
analysis. The package is then configured it small and simple – small islands of
data flows between multiple users and
or custom-coded to bridge the gaps. In functionalities are tested initially for a large
the functionality involves collaboration
situations where non-testers develop set of scenarios before binding them to
between these multiple users.
test plans, the test plans are generated end-to-end workflows.
according to the gaps.

External Document © 2015 Infosys Limited


4. Define and adopt structured test These scenarios require a separate track The DW/BI testing is typically executed
methodology comprising of testers who specialize in as an independent track with separate
handling them – integration testers and timelines altogether.
The data flow from and to the package
DW/BI testers. The integration testers
is arguably one of the most complex A pictorial representation of the test
predominantly employ grey box testing
and risky dimension of package methodology adopted in relation to the
methods as their testing strategy. The DW
implementation/maintenance, which is implementation lifecycle is given for ease
and BI testing track is best assigned to
compounded with the onset of new and of understanding:
a specialist testing team, which deploys
advanced integration technologies (SOA,
white box/ grey box testing techniques.
Cloud, etc.). In many cases, the packages
It is recommended to compress the
get integrated with data warehouse (DW)
integration testing track between system
and business intelligence (BI) systems.
testing and end-to-end business process
testing (discussed in point 3 above).

Req. High level Technical Test Acceptance Post Go


Build
design Design Test Live

1a) Test Strategy 5a)


2a) Test 2b) Test Performance
Reqmts Script 3a) Testing
traceability Design System
Testing
Test Methodology

5b)
Security
3b) Data
Testing
Migration 3d) User
1b) Requirements
Testing Acceptance
Testability Review
Testing
2b) Test 4a) System
Execution Integration 4b) Test
Planning Testing Closure

4b) E2E
Testing

Project/Program Management, Communication & Governance

Defect Management

Phase 1 –Test Phase 4 - Defect


Phase 2 –Test Design Phase 3 - Test Execution Resolution Testing & Test
Strategy Closure

External Document © 2015 Infosys Limited


5. Give special attention to activities By sanctioning test environment e. Last but not the least, performance
that support and complement budget to the independent testing testing for a package is different for
functional testing team, companies make the testing custom or online applications. The data
teams accountable for this trade off. requirements, the need for functional
Another rationale of independent testing
The independent testing team also knowledge during performance testing
for package implementation/maintenance
allows for automatic control of the test and the resource intensive middleware/
is the final principle of package testing.
environment, thereby streamlining backend programming necessitates
Besides the fact that functional testing
efficient testing. On their part, the a special and focused performance
for packages needs to be ably supported
testing team will need to accept testing track.
(Test Data Management, Environment
this responsibility by exercising
Management and UAT Support), it also
due diligence in identifying test
needs to be strengthened (Data Migration
environments, providing concise
testing, Compliance testing etc.) and
environment requirements, and
complemented (Non-functional Testing).
controlling the code deployments and
a. Test Data Management is one of the data setup activities.
latest areas of specialization in the
c. In cases where an existing legacy
software testing function. With the
system is being retired and its
database size handled by packages
functionality is being replaced with the
crossing from terabytes to petabytes, it
package, data migration is required.
is increasingly becoming an expensive
Mostly there are several ‘functional’
and complex affair to create and/or
issues inhibiting users to seamlessly
maintain the master data and reference
switch over from legacy to the
data required for a comprehensive
package, post implementation. Unless
testing exercise. A quick look at the
a specialized testing team focuses on
number of non-defects reported by
data conversions and migration testing,
testing teams and users with root cause
these issues usually end up affecting
of incorrect test data will validate this
user confidence and result in financial
claim. Companies are now setting up
losses.
independent and centralized test data
management teams, entrusted with the d. It is imperative that the package
role of creating a repository of relevant continues to comply with
business test data and provisioning to governmental and legal requirements
testing teams. like Sarbanes-Oxley (SOX). While
traditionally these have been left
b. It is imperative that an adequate
for the users to test during UAT,
test environment is available for
the capability to automate several
each of these testing activities.
functionalities and the ability for cost-
Creating multiple test environments
effective off-shoring is providing a
is expensive. Sharing and reusing
justifiable argument to save the user’s
available infrastructure reduces the
time and cost.
overall testing cost. However, multiple
environments may be needed due to
different environment requirements,
data constraints, security constraints
and time constraints.

External Document © 2015 Infosys Limited


Summary
COTS/package testing is complicated and
a difficult test effort to manage well. The About the Author
test strategy for such implementations/
maintenance encompasses almost all of Kiruba Vijayaraghavan
the specialized wings of testing function
has more than 12 years of experience in testing across industry verticals
of today. It is important that companies and technologies. He specializes in the assessment and implementation
recognize this and implement specialized of Test Centers of Excellence (TCoE), Test Factory for testing organizations
and independent testing personnel/teams and QA in Program Management for large scale implementations.
in supporting this activity for both the
package implementation as well as on-
going maintenance.

External Document © 2015 Infosys Limited


For more information, contact askus@infosys.com

© 2015 Infosys Limited, Bangalore, India. All Rights Reserved. Infosys believes the information in this document is accurate as of its publication date; such information is subject to change without notice. Infosys
acknowledges the proprietary rights of other companies to the trademarks, product names and such other intellectual property rights mentioned in this document. Except as expressly permitted, neither this
documentation nor any part of it may be reproduced, stored in a retrieval system, or transmitted in any form or by any means, electronic, mechanical, printing, photocopying, recording or otherwise, without the
prior permission of Infosys Limited and/ or any named intellectual property rights holders under this document.

Stay Connected

Potrebbero piacerti anche