Continue # Infosys Whitepaper 
 management system employed in this  scenario that would be built on blockchain  technology.<|endoftext|>The above model provides a secure  medium of authentication of the user  who is entering the partner network  assuming that the identity of the user can  be verified over a shared ledger system  and signed by the respective base owners  of the users. Similarly, the CDRs that relate  to the roaming duration can be cleared  over a joint system of clearing house that  is built on blockchain technology. This  would ensure instantaneous management  of transactions and charges can be setup  based on contracts to ensure that the  information is relayed back to the customer  instantaneously providing far more agility  and trust in the management of the  subscribers in other networks.<|endoftext|>With this system in design, let us look at  the key activities that are needed to ensure  that the implementation meets the desired  objectives outlined.<|endoftext|>•  System appreciation    The early involvement of the testing  team is extremely important since there  should be a view of the applications  within the stack that would be modeled  on the new technology along with the  affected system components. A detailed  view of the impacted components  needs to be included in the testing plan  and a strategy put up in place for each  of these components that are impacted.  For example, in the above case, the  billing systems as well as the user  identity managed systems are impacted  where the customer relationship  management (CRM) system may not be  directly affected by the change. Testing  scope for the impacted components  would be higher than the others where  a functional workflow with regression  test on the CRM systems could suffice.  •  Test design assurance    In this phase, with an early system view,  the team needs to put up a detailed  level test strategy and assign a  External Document © 2018 Infosys Limited 

---

  Page: 6 / 8  

---

  traceability to the requirements.     Specifically to blockchain testing,  the key components that need to be  checked in this phase include •  Build a model of the structure of  the blocks, the transactions, and the  contracts that need to be tested •  Outline a use case for each individual  section and end points to be validated,  i.e. if the transaction is to pass the user  credentials to the visiting network for  authentication, then detail the scenarios  under which testing could be required.<|endoftext|>•  Estimate non-functional requirements  (NFRs) as well as security testing needs.  In the above example,  the number  of CDRs logged in the clearing house  over a month should give a fair idea  of the number of transactions which  are expected and hence performance  tests can be considered at this level.  For security testing, the APIs that are  exposed need to be considered as well  measuring the inherent level of security  in the blockchain technology (private or  public)  •  Test planning    Test planning needs to consider the  full test strategy as well as the other  methodology to test and place to  conduct the testing.     For the above examples, a full test  strategy should outline the availability  or non-availability of a test environment  or a testnet and if one is not available, a  view of how a private one can be setup.         Also a low level view of how testing is  conducted along with the approach  to it in each phase from unit till  integration, functional tests needs  to be finalized. It is recommended  that the volume of tests follow a  pyramid structure and there is a good  amount of lower level tests (unit) to  identify and correct the systems prior  to integrating them with the rest of  the systems in the stack. From the  illustration below, it is assumed that an  Etherum based blockchain solution has  been implemented for managing user  handling during roaming and there is  an existing Amdocs billing system that it  integrates with.<|endoftext|>Testing phase Developer / Unit testing System testing Billing integration testing Functional verifcation / UI tests 2500 Test-driven development (TDD) approach with a suitable framework Verify refection of CDRs from clearing house on the billing system (Amdocs) Automated tests for front end verifcation of bills logged to the customers. For E.g. Selenium scripts for web testing Verify contracts, blocks, and blockchain updates with auto triggered roaming use cases setup on contracts through scripts 1000 275 50 Volume of tests Test methodology and tools Table 1: Test phases with volumes of tests, methodologies, and tools • Use cases map    The test plan needs to be verified and  validated by business for inclusion  of the user scenarios which map to  detailed level test cases.     A complete coverage can be ensured  only when all the functional validation  covers testing across the transactions,  i.e., the user moving from the home- based network to the visited or the  external network, the blocks, i.e., the  CDRs that are transmitted between the  network partners and the contracts  i.e. the rule allowing the user roaming  permissions on a partner network are  tested in all the different scenarios that  govern the functionality.<|endoftext|>• Test execution and result verification    Execution can be ideally automated  with scripting following a TDD approach  for unit testing on a suitable framework  and following a similar approach as  outlined in the test plan. The results  then need to be consolidated and  verified back. A list of defects identified  needs to be reported along with the test  execution status and conformance.     Focus in test execution should be on  unit and system tests as a higher level  of defects can be detected in the core  blockchain adoption in these phases.  The integration and functional level  tests can then be carried out to verify  the integration of the core with the  existing framework. However, the rule  set for the blockchain needs to be  verified within the unit and system  testing phases.<|endoftext|>   A guidance on the test strategy across  various test phases is provided below  with a call-out on the key activities to be  catered to manage within each phase.<|endoftext|>External Document © 2018 Infosys Limited 

---

  Page: 7 / 8  

---

 Figure 5: Test strategy across various test phases with a call-out on the key activities External Document © 2018 Infosys Limited 

---

  Page: 8 / 8  

---

 Summary The key to successfully adopt a blockchain methodology rests in a  well-balanced detailed approach to design and validation. While the  mechanism of validating and verifying is largely similar to any other  system, there is a necessity to focus on specific areas and evolving   a test strategy in line with the implementation construct that is   applied for the domain.  Infosys Validation Solutions (IVS) as a market leader in quality assurance  offers next-generation solutions and services and engages with  more than 300 clients globally. With focussed offerings across various  domains and segments and with key offering focussed in digital  assurance space, Infosys Validation Solutions are committed to deliver  high-quality products by adopting newer methodologies and solutions  for partnering enterprises across the globe.<|endoftext|>© 2018 Infosys Limited, Bengaluru, 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.  For more information, contact askus@infosys.com Infosys.com | NYSE: INFY Stay Connected   


***


  