BANGALORE, INDIA: As the software industry matures, there is a growing need felt to bring some structure into the development phase and its correlation to how testing can be conducted.
The ideal situation would be to have a structured development and testing methodology. In the absence of structure, we are in no position to guarantee a quality product. The pressures of stringent timelines can compromise on quality because they are used as an excuse for the inability to stand by the established processes. Any model that is developed towards bringing a structured approach should be able to not only address this issue but also to exploit this issue to justify its use.
Context
The fundamental aim of a testing exercise is to detect whether the development activity has happened in a structured manner or not. Hence it is imperative for the testing activity to be conducted in an orderly manner.
This article aims to describe how a model based testing approach can be adopted in a Retail Banking UAT context.
An effective model should be able to integrate principles relating to the domain and the testing principles with the test design. The domain principles in case of Retail banking would include certain negative rules or business rules pertaining to various transactions. These need to be considered in the design. Moreover, Testing principles such as Boundary value analysis, Equivalence Partitioning etc. also need to be addressed in the model.
Any business offers products to their customers, whether they are tangible products or intangible, in the form of services. For e.g. In Retail banking , Loans, Deposits, Current accounts, Savings accounts all can be considered as Financial Products. These Financial Products have certain unique characteristics. There should be a focus on testing of these characteristics that define a Financial Product. In addition, these definitions can undergo change anytime during the lifecycle of the product. Tests related to these changes or maintenances also need to be performed.
And then there are a set of lifecycle events or transactions that can be performed on these products. For e.g. If you take a Savings account, we can say that a Cash deposit, Cash withdrawal, Cheque deposit and withdrawal, Standing Instructions, Transfers etc are the Transactions that can be performed on the account.
Validations pertaining to these transactions form another major area for Testing.