{"id":243,"date":"2019-11-18T03:53:42","date_gmt":"2019-11-17T22:23:42","guid":{"rendered":"https:\/\/coforge.site\/cigniti\/blog\/?p=243"},"modified":"2022-07-28T20:20:15","modified_gmt":"2022-07-28T14:50:15","slug":"testing-online-banking-applications-hypothesis","status":"publish","type":"post","link":"https:\/\/coforge.site\/cigniti\/blog\/testing-online-banking-applications-hypothesis\/","title":{"rendered":"Testing online Banking applications: A hypothesis"},"content":{"rendered":"<p><span data-contrast=\"none\">Icebergs can be deceptive when looked at! They encompass a huge mass below the sea level which is around 90% of its actual size, leaving only 10% for the naked eye.<\/span><span data-ccp-props=\"{&quot;201341983&quot;:2,&quot;335559739&quot;:300,&quot;335559740&quot;:360}\">\u00a0<\/span><\/p>\n<p><span data-contrast=\"none\">How is that related to banking? To answer this question<\/span><span data-contrast=\"none\">,<\/span><span data-contrast=\"none\">\u00a0let\u2019s look at an example<\/span><span data-contrast=\"none\">:<\/span><span data-ccp-props=\"{&quot;201341983&quot;:2,&quot;335559739&quot;:300,&quot;335559740&quot;:360}\">\u00a0<\/span><\/p>\n<p><span data-contrast=\"none\">W<\/span><span data-contrast=\"none\">hen a customer performs an action on\u00a0<\/span><span data-contrast=\"none\">an<\/span><span data-contrast=\"none\">\u00a0online banking application<\/span><span data-contrast=\"none\">,<\/span><span data-contrast=\"none\">\u00a0the information generated travels back and forth through numerous complex systems\u00a0<\/span><span data-contrast=\"none\">to ensure<\/span><span data-contrast=\"none\">\u00a0data integrity, security<\/span><span data-contrast=\"none\">,<\/span><span data-contrast=\"none\">\u00a0and swift transaction completion time. If th<\/span><span data-contrast=\"none\">is<\/span><span data-contrast=\"none\">\u00a0was not enough<\/span><span data-contrast=\"none\">,<\/span><span data-contrast=\"none\">\u00a0the systems also need to ensure that they are up-to-date with regulatory compliance governed by banking bodies<\/span><span data-contrast=\"none\">\u00a0and\u00a0<\/span><span data-contrast=\"none\">Federal Laws. For the end user<\/span><span data-contrast=\"none\">, all they do is make a click. B<\/span><span data-contrast=\"none\">ut, in reality<\/span><span data-contrast=\"none\">,<\/span><span data-contrast=\"none\">\u00a0it<\/span><span data-contrast=\"none\">\u00a0i<\/span><span data-contrast=\"none\">s a deep dive!<\/span><span data-ccp-props=\"{&quot;201341983&quot;:2,&quot;335559739&quot;:300,&quot;335559740&quot;:360}\">\u00a0<\/span><\/p>\n<p><b><span data-contrast=\"none\">Even a simple flow may involve many checks<\/span><\/b><span data-ccp-props=\"{&quot;201341983&quot;:2,&quot;335551550&quot;:6,&quot;335551620&quot;:6,&quot;335559739&quot;:300,&quot;335559740&quot;:360}\">\u00a0<\/span><\/p>\n<p style=\"text-align: justify;\"><img decoding=\"async\" class=\"alignnone wp-image-244 size-full\" src=\"https:\/\/coforge.site\/cigniti\/blog\/wp-content\/uploads\/2015\/01\/online-banking.png\" alt=\"Testing banking applications - flow\" width=\"606\" height=\"323\" srcset=\"https:\/\/coforge.site\/cigniti\/blog\/wp-content\/uploads\/2015\/01\/online-banking.png 606w, https:\/\/coforge.site\/cigniti\/blog\/wp-content\/uploads\/2015\/01\/online-banking-300x159.png 300w\" sizes=\"(max-width: 606px) 100vw, 606px\" \/><\/p>\n<p><b><span data-contrast=\"none\">Drilling through the Iceberg<\/span><\/b><span data-ccp-props=\"{&quot;201341983&quot;:2,&quot;335551550&quot;:6,&quot;335551620&quot;:6,&quot;335559739&quot;:300,&quot;335559740&quot;:360}\">\u00a0<\/span><\/p>\n<p><span data-contrast=\"none\">Banking systems are an intertwined ball of interfaces which crossfire (<\/span><i><span data-contrast=\"none\">and possibly<\/span><\/i><i><span data-contrast=\"none\">\u00a0<\/span><\/i><i><span data-contrast=\"none\">m<\/span><\/i><i><span data-contrast=\"none\">isfire<\/span><\/i><span data-contrast=\"none\">) in all directions. We are talking about real<\/span><span data-contrast=\"none\">&#8211;<\/span><span data-contrast=\"none\">time interfaces which require multiple requests and responses within seconds to ensure<\/span><span data-contrast=\"none\">\u00a0total<\/span><span data-contrast=\"none\">\u00a0sync.\u00a0<\/span><span data-contrast=\"none\">It is similar to the<\/span><span data-contrast=\"none\">\u00a0voluminous traffic conditions which go hay-wired at multiple\u00a0<\/span><span data-contrast=\"none\">road\u00a0<\/span><span data-contrast=\"none\">intersections\u00a0<\/span><span data-contrast=\"none\">while<\/span><span data-contrast=\"none\">\u00a0you try to\u00a0<\/span><span data-contrast=\"none\">make your way<\/span><span data-contrast=\"none\">\u00a0out. With such a huge data flow<\/span><span data-contrast=\"none\">, it gets challenging to<\/span><span data-contrast=\"none\">\u00a0maint<\/span><span data-contrast=\"none\">ain<\/span><span data-contrast=\"none\">\u00a0optimum performance with effective and realistic response times. When\u00a0<\/span><span data-contrast=\"none\">these systems grow enormous and when we expect them to function with a certain degree of accuracy, Software Testing<\/span><span data-contrast=\"none\">\u00a0becomes an important determinant<\/span><span data-contrast=\"none\">. There may be different school of thoughts on \u201cHow to test?\u201d but Testing certainly plays a key role in optimizing the symphonic sync between systems. Studies have shown that fixing banking defects in production have cost a lot of money<\/span><span data-contrast=\"none\">,<\/span><span data-contrast=\"none\">\u00a0time<\/span><span data-contrast=\"none\">,<\/span><span data-contrast=\"none\">\u00a0and effort<\/span><span data-contrast=\"none\">,<\/span><span data-contrast=\"none\">\u00a0which not only leads to errors in data integrity but also traumatizing embarrassment. Banking systems span across sub-domains such as\u202f<\/span><span data-contrast=\"none\">Investment Banking, Retail Banking<\/span><span data-contrast=\"none\">,<\/span><span data-contrast=\"none\">\u202f<\/span><span data-contrast=\"none\">and<\/span><span data-contrast=\"none\">\u202fCommercial Banking<\/span><i><span data-contrast=\"none\">.\u202f<\/span><\/i><span data-contrast=\"none\">Each sub<\/span><span data-contrast=\"none\">&#8211;<\/span><span data-contrast=\"none\">banking system has its own set of testing needs\u00a0<\/span><span data-contrast=\"none\">that<\/span><span data-contrast=\"none\">\u00a0<\/span><span data-contrast=\"none\">has<\/span><span data-contrast=\"none\">\u00a0to be addressed for the desired outcome.<\/span><span data-ccp-props=\"{&quot;201341983&quot;:2,&quot;335551550&quot;:6,&quot;335551620&quot;:6,&quot;335559739&quot;:300,&quot;335559740&quot;:360}\">\u00a0<\/span><\/p>\n<p><b><span data-contrast=\"none\">The Speed Breakers<\/span><\/b><span data-ccp-props=\"{&quot;201341983&quot;:2,&quot;335551550&quot;:6,&quot;335551620&quot;:6,&quot;335559739&quot;:300,&quot;335559740&quot;:360}\">\u00a0<\/span><\/p>\n<p><b><span data-contrast=\"none\">Data Volume<\/span><\/b><b><span data-contrast=\"none\">:\u00a0<\/span><\/b><span data-contrast=\"none\">Banking systems indiscriminately rely on huge\u00a0<\/span><span data-contrast=\"none\">volumes<\/span><span data-contrast=\"none\">\u00a0of data<\/span><span data-contrast=\"none\">. E<\/span><span data-contrast=\"none\">ven a small operation generates a lot of\u00a0<\/span><span data-contrast=\"none\">information.<\/span><span data-contrast=\"none\">\u00a0For instance, a simple event such as Log-in to the system may capture Log-in Date, Log-in Time, Location of the<\/span><span data-contrast=\"none\">\u00a0<\/span><span data-contrast=\"none\">User,<\/span><span data-contrast=\"none\">\u00a0and<\/span><span data-contrast=\"none\">\u00a0Audit Trail<\/span><span data-contrast=\"none\">\u00a0&#8211;\u00a0<\/span><i><span data-contrast=\"none\">a<\/span><\/i><i><span data-contrast=\"none\">ll this when the user did<\/span><\/i><i><span data-contrast=\"none\">\u00a0no<\/span><\/i><i><span data-contrast=\"none\">t even perform any real action<\/span><\/i><span data-contrast=\"none\">. Within complicated systems data may eventually be stored in the application databases or cloud<\/span><span data-contrast=\"none\">&#8211;<\/span><span data-contrast=\"none\">based database<\/span><span data-contrast=\"none\">s,<\/span><span data-contrast=\"none\">\u00a0thousands of miles away. Data storage and retrieval pose a\u00a0<\/span><span data-contrast=\"none\">severe<\/span><span data-contrast=\"none\">\u00a0challenge<\/span><span data-contrast=\"none\">\u00a0for banking organizations.<\/span><span data-ccp-props=\"{&quot;201341983&quot;:2,&quot;335551550&quot;:6,&quot;335551620&quot;:6,&quot;335559739&quot;:300,&quot;335559740&quot;:360}\">\u00a0<\/span><\/p>\n<p><b><span data-contrast=\"none\">Approach towards handling large Data Volume Tests<\/span><\/b><b><span data-contrast=\"none\">:<\/span><\/b><span data-contrast=\"none\">\u00a0The approach from the test management perspective<\/span><span data-contrast=\"none\">\u00a0recommends<\/span><span data-contrast=\"none\">\u00a0creat<\/span><span data-contrast=\"none\">ion of<\/span><span data-contrast=\"none\">\u00a0distinct data sets per interface,\u00a0<\/span><span data-contrast=\"none\">i<\/span><span data-contrast=\"none\">ron<\/span><span data-contrast=\"none\">ing<\/span><span data-contrast=\"none\">\u00a0out key areas of impact for a particular feature across interfaces<\/span><span data-contrast=\"none\">,<\/span><span data-contrast=\"none\">\u00a0and plan<\/span><span data-contrast=\"none\">ning<\/span><span data-contrast=\"none\">\u00a0tests accordingly.\u00a0<\/span><span data-ccp-props=\"{&quot;201341983&quot;:2,&quot;335551550&quot;:6,&quot;335551620&quot;:6,&quot;335559739&quot;:300,&quot;335559740&quot;:360}\">\u00a0<\/span><\/p>\n<p><span data-contrast=\"none\">Different banking projects have different test data needs. For instance<\/span><span data-contrast=\"none\">,<\/span><span data-contrast=\"none\">\u00a0a retail banking project may require lots of test data related to user accounts,\u00a0<\/span><span data-contrast=\"none\">funds transfe<\/span><span data-contrast=\"none\">r and\u00a0<\/span><span data-contrast=\"none\">mobile deposits<\/span><span data-contrast=\"none\">. An investment banking projects may need test data related to\u00a0<\/span><span data-contrast=\"none\">derivatives<\/span><span data-contrast=\"none\">, bonds, stocks<\/span><span data-contrast=\"none\">,<\/span><span data-contrast=\"none\">\u00a0etc. These factors need to be carefully\u00a0analysed\u00a0and test data sets should be created accordingly (per environment). Any updates to these should be versioned\/tracked.<\/span><span data-ccp-props=\"{&quot;201341983&quot;:2,&quot;335551550&quot;:6,&quot;335551620&quot;:6,&quot;335559739&quot;:300,&quot;335559740&quot;:360}\">\u00a0<\/span><\/p>\n<p><span class=\"TextRun SCXW209316634 BCX0\" lang=\"EN-US\" xml:lang=\"EN-US\" data-contrast=\"none\"><span class=\"NormalTextRun SCXW209316634 BCX0\">Two key areas that needs to be introduced selectively are Functional automation and\u202f<\/span><\/span><a class=\"Hyperlink SCXW209316634 BCX0\" href=\"https:\/\/www.cigniti.com\/services\/performance-testing\/\" target=\"_blank\" rel=\"noopener noreferrer\"><span class=\"TextRun Underlined SCXW209316634 BCX0\" lang=\"EN-US\" xml:lang=\"EN-US\" data-contrast=\"none\"><span class=\"NormalTextRun SCXW209316634 BCX0\">Performance Testing<\/span><\/span><\/a><span class=\"TextRun SCXW209316634 BCX0\" lang=\"EN-US\" xml:lang=\"EN-US\" data-contrast=\"none\"><span class=\"NormalTextRun SCXW209316634 BCX0\">. Functional automation helps because manually validating everything can be a time<\/span><\/span><span class=\"TextRun SCXW209316634 BCX0\" lang=\"EN-US\" xml:lang=\"EN-US\" data-contrast=\"none\"><span class=\"NormalTextRun SCXW209316634 BCX0\">&#8211;<\/span><\/span><span class=\"TextRun SCXW209316634 BCX0\" lang=\"EN-US\" xml:lang=\"EN-US\" data-contrast=\"none\"><span class=\"NormalTextRun SCXW209316634 BCX0\">consuming activity if tests need to<\/span><\/span><span class=\"TextRun SCXW209316634 BCX0\" lang=\"EN-US\" xml:lang=\"EN-US\" data-contrast=\"none\"><span class=\"NormalTextRun SCXW209316634 BCX0\">\u00a0be<\/span><\/span><span class=\"TextRun SCXW209316634 BCX0\" lang=\"EN-US\" xml:lang=\"EN-US\" data-contrast=\"none\"><span class=\"NormalTextRun SCXW209316634 BCX0\">\u00a0run over and over again. Automation can be significant when business needs require Exhaustive testing (<\/span><\/span><span class=\"TextRun SCXW209316634 BCX0\" lang=\"EN-US\" xml:lang=\"EN-US\" data-contrast=\"none\"><span class=\"NormalTextRun SCXW209316634 BCX0\">testing\u00a0<\/span><\/span><span class=\"TextRun SCXW209316634 BCX0\" lang=\"EN-US\" xml:lang=\"EN-US\" data-contrast=\"none\"><span class=\"NormalTextRun SCXW209316634 BCX0\">all the possible combinations), which is otherwise not possible with manual execution methodologies. Not only does it improve accuracy of the\u00a0<\/span><\/span><span class=\"TextRun SCXW209316634 BCX0\" lang=\"EN-US\" xml:lang=\"EN-US\" data-contrast=\"none\"><span class=\"NormalTextRun SCXW209316634 BCX0\">tests,<\/span><\/span><span class=\"TextRun SCXW209316634 BCX0\" lang=\"EN-US\" xml:lang=\"EN-US\" data-contrast=\"none\"><span class=\"NormalTextRun SCXW209316634 BCX0\">\u00a0but the testing team can focus on other activities which may help\u00a0<\/span><\/span><span class=\"TextRun SCXW209316634 BCX0\" lang=\"EN-US\" xml:lang=\"EN-US\" data-contrast=\"none\"><span class=\"NormalTextRun SCXW209316634 BCX0\">improve\u00a0<\/span><\/span><span class=\"TextRun SCXW209316634 BCX0\" lang=\"EN-US\" xml:lang=\"EN-US\" data-contrast=\"none\"><span class=\"NormalTextRun SCXW209316634 BCX0\">the overall product<\/span><\/span><span class=\"TextRun SCXW209316634 BCX0\" lang=\"EN-US\" xml:lang=\"EN-US\" data-contrast=\"none\"><span class=\"NormalTextRun SCXW209316634 BCX0\">\u00a0quality<\/span><\/span><span class=\"TextRun SCXW209316634 BCX0\" lang=\"EN-US\" xml:lang=\"EN-US\" data-contrast=\"none\"><span class=\"NormalTextRun SCXW209316634 BCX0\">. Performance testing on the other hand should ideally be performed in various stages of the product lifecycle. A few performance related tests should be performed during the development phase and a\u00a0<\/span><\/span><span class=\"TextRun SCXW209316634 BCX0\" lang=\"EN-US\" xml:lang=\"EN-US\" data-contrast=\"none\"><span class=\"NormalTextRun SCXW209316634 BCX0\">few post the testing cycle is over just before going live. Since banking systems thrive on transactional data predominantly, careful planning of test data and its strategy could result in significant gains.<\/span><\/span><span class=\"EOP SCXW209316634 BCX0\" data-ccp-props=\"{&quot;201341983&quot;:2,&quot;335551550&quot;:6,&quot;335551620&quot;:6,&quot;335559739&quot;:300,&quot;335559740&quot;:360}\">\u00a0<\/span><\/p>\n<p><b><span data-contrast=\"none\">Legacy Systems<\/span><\/b><b><span data-contrast=\"none\">:<\/span><\/b><span data-contrast=\"none\">\u00a0<\/span><span data-contrast=\"none\">Legacy systems can be a real threat when it comes to consistency. Testing gets tricky with these old systems. Challenge quadruples as these systems usually have minimal or no documentation for troubleshooting.<\/span><span data-contrast=\"none\">\u00a0Almost half of bankers perceive legacy systems to be the biggest barriers to the growth of the commercial<\/span><span data-contrast=\"none\">\u00a0<\/span><span data-contrast=\"none\">banks, as per the recent research by\u00a0Fraedom. The numerous outages across the top high street banks are forcing or have forced the banks to move on to more advanced solutions and probably adopt FinTech.<\/span><span data-ccp-props=\"{&quot;201341983&quot;:2,&quot;335551550&quot;:6,&quot;335551620&quot;:6,&quot;335559739&quot;:300,&quot;335559740&quot;:360}\">\u00a0<\/span><\/p>\n<p><b><span data-contrast=\"none\">Approach towards handling Legacy System Tests<\/span><\/b><b><span data-contrast=\"none\">:<\/span><\/b><span data-contrast=\"none\">\u00a0A\u00a0<\/span><span data-contrast=\"none\">dedicated\u00a0<\/span><span data-contrast=\"none\">and specialist team is required to handle legacy systems<\/span><span data-contrast=\"none\">\u00a0as\u00a0<\/span><span data-contrast=\"none\">people with real experience managing a systematic test approach may come in handy here. Another\u00a0<\/span><span data-contrast=\"none\">practical<\/span><span data-contrast=\"none\">\u00a0approach would be to incorporate all the business<\/span><span data-contrast=\"none\">-c<\/span><span data-contrast=\"none\">ritical functional tests per environment (QA, UAT, Staging etc.). Ensuring prompt tests on all the environments will<\/span><span data-contrast=\"none\">,<\/span><span data-contrast=\"none\">\u00a0to a certain degree<\/span><span data-contrast=\"none\">,<\/span><span data-contrast=\"none\">\u00a0ensure a better performance and catch a particular bug on time<\/span><span data-contrast=\"none\">,<\/span><span data-contrast=\"none\">\u00a0especially on the staging environment. These tests need to be closely monitored and administered though.<\/span><span data-ccp-props=\"{&quot;201341983&quot;:2,&quot;335551550&quot;:6,&quot;335551620&quot;:6,&quot;335559739&quot;:300,&quot;335559740&quot;:360}\">\u00a0<\/span><\/p>\n<p><span data-contrast=\"none\">Creation of user guides with screenshots also impacts the overall testing. Functional guides \/<\/span><span data-contrast=\"none\">knowledge\u00a0<\/span><span data-contrast=\"none\">repository can be gold mine here. It is strongly advised that the QA Manager plan creation of up-to-date user guide with screenshots (<\/span><span data-contrast=\"none\">videos\u00a0<\/span><span data-contrast=\"none\">score brownie points here). Guides help in pin<\/span><span data-contrast=\"none\">&#8211;<\/span><span data-contrast=\"none\">pointing issues and new testers\/developers can have access to a functional repository of the legacy system.<\/span><span data-ccp-props=\"{&quot;201341983&quot;:2,&quot;335551550&quot;:6,&quot;335551620&quot;:6,&quot;335559739&quot;:300,&quot;335559740&quot;:360}\">\u00a0<\/span><\/p>\n<p><b><span data-contrast=\"none\">Interfacing Systems<\/span><\/b><span data-contrast=\"none\">:<\/span><span data-contrast=\"none\">\u00a0Banking systems these days are tight bundle of a myriad of systems. Banks may be interested in knowing your credit score, they may also want to see\u00a0<\/span><span data-contrast=\"none\">whether or not<\/span><span data-contrast=\"none\">\u00a0you were involved in fraudulent practices earlier. What if your account was hacked and someone tried logging into your account from Costa<\/span><span data-contrast=\"none\">\u00a0<\/span><span data-contrast=\"none\">Rica? There are interfacing systems which ensure checks on all the inferences made above and react in milliseconds! Within no time<\/span><span data-contrast=\"none\">,<\/span><span data-contrast=\"none\">\u00a0all the information is sourced into the central system for further action and decision making.<\/span><span data-ccp-props=\"{&quot;201341983&quot;:2,&quot;335551550&quot;:6,&quot;335551620&quot;:6,&quot;335559739&quot;:300,&quot;335559740&quot;:360}\">\u00a0<\/span><\/p>\n<p><strong><span class=\"TextRun SCXW56078750 BCX0\" lang=\"EN-US\" xml:lang=\"EN-US\" data-contrast=\"none\"><span class=\"NormalTextRun SCXW56078750 BCX0\">Approach towards handling interfacing system tests<\/span><\/span><span class=\"TextRun SCXW56078750 BCX0\" lang=\"EN-US\" xml:lang=\"EN-US\" data-contrast=\"none\"><span class=\"NormalTextRun SCXW56078750 BCX0\">:<\/span><\/span><\/strong><span class=\"TextRun SCXW56078750 BCX0\" lang=\"EN-US\" xml:lang=\"EN-US\" data-contrast=\"none\"><span class=\"NormalTextRun SCXW56078750 BCX0\">\u00a0This proves out to be the tricky section and the entire\u202f<\/span><\/span><a class=\"Hyperlink SCXW56078750 BCX0 broken_link\" href=\"https:\/\/www.cigniti.com\/industries\/banking\/\" target=\"_blank\" rel=\"noopener noreferrer\"><span class=\"TextRun Underlined SCXW56078750 BCX0\" lang=\"EN-US\" xml:lang=\"EN-US\" data-contrast=\"none\"><span class=\"NormalTextRun SCXW56078750 BCX0\">banking application testing<\/span><\/span><\/a><span class=\"TextRun SCXW56078750 BCX0\" lang=\"EN-US\" xml:lang=\"EN-US\" data-contrast=\"none\"><span class=\"NormalTextRun SCXW56078750 BCX0\">\u202fneeds depends on this section and how we streamline it. The most important approach in testing the interfacing systems are end<\/span><\/span><span class=\"TextRun SCXW56078750 BCX0\" lang=\"EN-US\" xml:lang=\"EN-US\" data-contrast=\"none\"><span class=\"NormalTextRun SCXW56078750 BCX0\">&#8211;<\/span><\/span><span class=\"TextRun SCXW56078750 BCX0\" lang=\"EN-US\" xml:lang=\"EN-US\" data-contrast=\"none\"><span class=\"NormalTextRun SCXW56078750 BCX0\">to<\/span><\/span><span class=\"TextRun SCXW56078750 BCX0\" lang=\"EN-US\" xml:lang=\"EN-US\" data-contrast=\"none\"><span class=\"NormalTextRun SCXW56078750 BCX0\">&#8211;<\/span><\/span><span class=\"TextRun SCXW56078750 BCX0\" lang=\"EN-US\" xml:lang=\"EN-US\" data-contrast=\"none\"><span class=\"NormalTextRun SCXW56078750 BCX0\">end tests. Typically<\/span><\/span><span class=\"TextRun SCXW56078750 BCX0\" lang=\"EN-US\" xml:lang=\"EN-US\" data-contrast=\"none\"><span class=\"NormalTextRun SCXW56078750 BCX0\">,<\/span><\/span><span class=\"TextRun SCXW56078750 BCX0\" lang=\"EN-US\" xml:lang=\"EN-US\" data-contrast=\"none\"><span class=\"NormalTextRun SCXW56078750 BCX0\">\u00a0software testing teams tend to write separate test scenarios for different pieces. If tests are written interface<\/span><\/span><span class=\"TextRun SCXW56078750 BCX0\" lang=\"EN-US\" xml:lang=\"EN-US\" data-contrast=\"none\"><span class=\"NormalTextRun SCXW56078750 BCX0\">&#8211;<\/span><\/span><span class=\"TextRun SCXW56078750 BCX0\" lang=\"EN-US\" xml:lang=\"EN-US\" data-contrast=\"none\"><span class=\"NormalTextRun SCXW56078750 BCX0\">wise<\/span><\/span><span class=\"TextRun SCXW56078750 BCX0\" lang=\"EN-US\" xml:lang=\"EN-US\" data-contrast=\"none\"><span class=\"NormalTextRun SCXW56078750 BCX0\">,<\/span><\/span><span class=\"TextRun SCXW56078750 BCX0\" lang=\"EN-US\" xml:lang=\"EN-US\" data-contrast=\"none\"><span class=\"NormalTextRun SCXW56078750 BCX0\">\u00a0one after the other<\/span><\/span><span class=\"TextRun SCXW56078750 BCX0\" lang=\"EN-US\" xml:lang=\"EN-US\" data-contrast=\"none\"><span class=\"NormalTextRun SCXW56078750 BCX0\">,<\/span><\/span><span class=\"TextRun SCXW56078750 BCX0\" lang=\"EN-US\" xml:lang=\"EN-US\" data-contrast=\"none\"><span class=\"NormalTextRun SCXW56078750 BCX0\">\u00a0from the beginning of the transaction to the end<\/span><\/span><span class=\"TextRun SCXW56078750 BCX0\" lang=\"EN-US\" xml:lang=\"EN-US\" data-contrast=\"none\"><span class=\"NormalTextRun SCXW56078750 BCX0\">,<\/span><\/span><span class=\"TextRun SCXW56078750 BCX0\" lang=\"EN-US\" xml:lang=\"EN-US\" data-contrast=\"none\"><span class=\"NormalTextRun SCXW56078750 BCX0\">\u00a0it will ensure test\u00a0<\/span><\/span><span class=\"TextRun SCXW56078750 BCX0\" lang=\"EN-US\" xml:lang=\"EN-US\" data-contrast=\"none\"><span class=\"NormalTextRun SCXW56078750 BCX0\">completion resulting in a more holistic testing approach. Adding priorities to each interfacing test may lead to better test completion<\/span><\/span><span class=\"TextRun SCXW56078750 BCX0\" lang=\"EN-US\" xml:lang=\"EN-US\" data-contrast=\"none\"><span class=\"NormalTextRun SCXW56078750 BCX0\">,<\/span><\/span><span class=\"TextRun SCXW56078750 BCX0\" lang=\"EN-US\" xml:lang=\"EN-US\" data-contrast=\"none\"><span class=\"NormalTextRun SCXW56078750 BCX0\">\u00a0especially if the test team is running against schedule\/time.<\/span><\/span><span class=\"EOP SCXW56078750 BCX0\" data-ccp-props=\"{&quot;201341983&quot;:2,&quot;335551550&quot;:6,&quot;335551620&quot;:6,&quot;335559739&quot;:300,&quot;335559740&quot;:360}\">\u00a0<\/span><\/p>\n<p><b><span data-contrast=\"none\">Device\u202fCompatibility<\/span><\/b><span data-contrast=\"none\">:<\/span><span data-contrast=\"none\">\u00a0<\/span><span data-contrast=\"none\">No one really visits a bank\u00a0any more<\/span><span data-contrast=\"none\">? We\u00a0<\/span><i><span data-contrast=\"none\">demand<\/span><\/i><span data-contrast=\"none\">\u00a0access to all the banking services while on the move and expect the mobile banking application to work on all the devices across platforms (Desktops \/ Tabs \/ Mobile Devices) \u2013\u00a0<\/span><i><span data-contrast=\"none\">No concessions whatsoever<\/span><\/i><span data-contrast=\"none\">! Device Fragmentation proves out to be a major bottleneck in providing secure and an effective user experience. Different devices behave differently<\/span><span data-contrast=\"none\">,<\/span><span data-contrast=\"none\">\u00a0resulting in the same banking app yielding a different result. This chaotic situation poses a distinct challenge of testing the same features for functional and UX consistencies. Device compatibility directly impacts the user experience and can be a decisive factor in evaluating failure or success of a product.<\/span><span data-ccp-props=\"{&quot;201341983&quot;:2,&quot;335551550&quot;:6,&quot;335551620&quot;:6,&quot;335559739&quot;:300,&quot;335559740&quot;:360}\">\u00a0<\/span><\/p>\n<p><b><span data-contrast=\"none\">Approach towards handling compatibility tests<\/span><\/b><span data-contrast=\"none\">:<\/span><span data-contrast=\"none\">\u00a0With such huge fragmentation it gets difficult to perform exhaustive testing (period). However<\/span><span data-contrast=\"none\">,<\/span><span data-contrast=\"none\">\u00a0what could be done is carefully understand the customers of the product and the area in which the product usage is rampant. Once\u00a0<\/span><span data-contrast=\"none\">this information is<\/span><span data-contrast=\"none\">\u00a0derive<\/span><span data-contrast=\"none\">d,<\/span><span data-contrast=\"none\">\u00a0we can get an online split on what are the most widely<\/span><span data-contrast=\"none\">&#8211;<\/span><span data-contrast=\"none\">used platform based on\u00a0<\/span><span data-contrast=\"none\">the\u00a0<\/span><span data-contrast=\"none\">socioeconomic factors. On the other hand<\/span><span data-contrast=\"none\">,<\/span><span data-contrast=\"none\">\u00a0if the application is already in operation and people are using it extensively<\/span><span data-contrast=\"none\">,<\/span><span data-contrast=\"none\">\u00a0we can get the list of devices from paid data providers. This is by far the most accurate way to narrow down the tastes and preferences of consumers as far as device fragmentation goes! It also helps in judging the acceptability of radical solutions being served. For instance<\/span><span data-contrast=\"none\">,<\/span><span data-contrast=\"none\">\u00a0in USA and Canada the focus may be on High<\/span><span data-contrast=\"none\">&#8211;<\/span><span data-contrast=\"none\">end IOS\/Android phones while Brazil would need the application to be tested on low<\/span><span data-contrast=\"none\">&#8211;<\/span><span data-contrast=\"none\">end Android phones. Marketing team and the product solutions may provide insightful statistics to iron out the most effective tests.<\/span><span data-ccp-props=\"{&quot;201341983&quot;:2,&quot;335551550&quot;:6,&quot;335551620&quot;:6,&quot;335559739&quot;:300,&quot;335559740&quot;:360}\">\u00a0<\/span><\/p>\n<p><b><span data-contrast=\"none\">Team Fragmentation<\/span><\/b><span data-contrast=\"none\">:<\/span><span data-contrast=\"none\">\u00a0The world is a global village with respect to technologies. These days,\u00a0<\/span><span data-contrast=\"none\">development\u00a0<\/span><span data-contrast=\"none\">and testing teams sit at different locations due to various reasons pertaining to costs and availability of technology. While development teams get away easily as they are just worried about modular development, testing teams come under real pressure with this paradigm. Testers need to know how the application flow works, test the application, log defects, find requirement flaws and most importantly do all of this within a tight and a strict timeline. Most of you who read this may feel Team fragmentation does not make a huge difference, but in\u00a0<\/span><span data-contrast=\"none\">reality,<\/span><span data-contrast=\"none\">\u00a0it is always easy to deliver projects where teams are co-located on the other hand banking projects talk to so many interfaces that it gets difficult for all the teams to be co-located. It gets worse if the teams are located in different time-zones (Turn around\u00a0times take a hit).<\/span><span data-ccp-props=\"{&quot;201341983&quot;:2,&quot;335551550&quot;:6,&quot;335551620&quot;:6,&quot;335559739&quot;:300,&quot;335559740&quot;:360}\">\u00a0<\/span><\/p>\n<p><b><span data-contrast=\"none\">Approach towards handling spread out teams<\/span><\/b><b><i><span data-contrast=\"none\">\u202f<\/span><\/i><\/b><span data-contrast=\"none\">\u2013 There are a few major areas that can be pivotal in a successful QA project delivery with teams sitting across locations.<\/span><span data-ccp-props=\"{&quot;201341983&quot;:2,&quot;335551550&quot;:6,&quot;335551620&quot;:6,&quot;335559739&quot;:300,&quot;335559740&quot;:360}\">\u00a0<\/span><\/p>\n<ul>\n<li data-leveltext=\"\uf0b7\" data-font=\"Symbol\" data-listid=\"1\" aria-setsize=\"-1\" data-aria-posinset=\"1\" data-aria-level=\"1\"><i><span data-contrast=\"none\">Environment<\/span><\/i><span data-contrast=\"none\">\u202f\u2013 The QA Environment needs to be in ship shape and fully loaded. With remote teams accessing the system it always helps to have lightning fast responses. The approvals and information infringement agreements should be taken care of well in advance with\u00a0<\/span><span data-contrast=\"none\">VPN<\/span><span data-contrast=\"none\">\u00a0setup and tested. The mobile testing facility should be given utmost important as with remote testing setups\u202f<\/span><a href=\"https:\/\/www.cigniti.com\/services\/mobile-testing\/\" class=\"broken_link\" target=\"_blank\" rel=\"noopener\"><span data-contrast=\"none\">testing mobile apps<\/span><\/a><span data-contrast=\"none\">\u202fis a challenge.<\/span><span data-ccp-props=\"{&quot;134233117&quot;:true,&quot;134233118&quot;:true,&quot;201341983&quot;:2,&quot;335551550&quot;:6,&quot;335551620&quot;:6,&quot;335559739&quot;:160,&quot;335559740&quot;:360}\">\u00a0<\/span><\/li>\n<li data-leveltext=\"\uf0b7\" data-font=\"Symbol\" data-listid=\"1\" aria-setsize=\"-1\" data-aria-posinset=\"2\" data-aria-level=\"1\"><i><span data-contrast=\"none\">One tool Approach<\/span><\/i><span data-contrast=\"none\">\u202f\u2013 QA Team \/ Product Team and The Dev team should be on a single project management tool so that the information is not repetitive and most importantly not lost! Choosing a simple tool helps here, complicated tools are feature rich but are difficult to use. Logging defects, Test case management and in fact any project approval should be done within the tool, possibly in the form of comments; instead of sending boring emails. All the major stakeholders from all the interfaces should have access to the tool and they should be using it for most of the communication. Communicating on time is critical for a successful QA Delivery.<\/span><span data-ccp-props=\"{&quot;134233117&quot;:true,&quot;134233118&quot;:true,&quot;201341983&quot;:2,&quot;335551550&quot;:6,&quot;335551620&quot;:6,&quot;335559739&quot;:160,&quot;335559740&quot;:360}\">\u00a0<\/span><\/li>\n<li data-leveltext=\"\uf0b7\" data-font=\"Symbol\" data-listid=\"1\" aria-setsize=\"-1\" data-aria-posinset=\"3\" data-aria-level=\"1\"><i><span data-contrast=\"none\">Effective defect triage meetings\u202f\u2013<\/span><\/i><span data-contrast=\"none\">\u202fWhen banking applications are tested<\/span><span data-contrast=\"none\">,<\/span><span data-contrast=\"none\">\u00a0a bug raised on front<\/span><span data-contrast=\"none\">&#8211;<\/span><span data-contrast=\"none\">end could actually be a back-end issue. Defects can be misleading! Instead of beating around the bush or assigning them to wrong people (which gobbles up precious time)<\/span><span data-contrast=\"none\">,<\/span><span data-contrast=\"none\">\u00a0it may be worthwhile pulling all the key people involved into frequent defect triage meets. Based on the project timelines<\/span><span data-contrast=\"none\">,<\/span><span data-contrast=\"none\">\u00a0an effective triage plan should be laid out. QA Team should be driving this meeting and each meeting should be preceded by a meaningful agenda and exact areas to be discussed, be it Defects or Requirements. Once the team gets used to the triage meets over a period of time it improves defect to remark ratio and betters defect severity index.<\/span><span data-ccp-props=\"{&quot;134233117&quot;:true,&quot;134233118&quot;:true,&quot;201341983&quot;:2,&quot;335551550&quot;:6,&quot;335551620&quot;:6,&quot;335559739&quot;:160,&quot;335559740&quot;:360}\">\u00a0<\/span><\/li>\n<\/ul>\n<p><b><span data-contrast=\"none\">Environment Stack<\/span><\/b><b><span data-contrast=\"none\">:<\/span><\/b><span data-contrast=\"none\">\u00a0Banking applications are critical in nature and with real money involved the stakes are pretty high. Banking application typically have QA, UAT, Staging<\/span><span data-contrast=\"none\">,<\/span><span data-contrast=\"none\">\u00a0and Production environments. With the increase in environments the complexities grow equally. Once in production any release needs to perform optimally\u202facross environments both functional<\/span><span data-contrast=\"none\">ity and performance wise.<\/span><span data-ccp-props=\"{&quot;201341983&quot;:2,&quot;335551550&quot;:6,&quot;335551620&quot;:6,&quot;335559739&quot;:300,&quot;335559740&quot;:360}\">\u00a0<\/span><\/p>\n<p><b><span data-contrast=\"none\">Approach towards handling environment<\/span><\/b><b><span data-contrast=\"none\">:<\/span><\/b><span data-contrast=\"none\">\u202fIt may sound and appear\u00a0<\/span><span data-contrast=\"none\">insignificant,<\/span><span data-contrast=\"none\">\u00a0but the environment management team plays a crucial role across all the phases of the application development, Testing<\/span><span data-contrast=\"none\">,<\/span><span data-contrast=\"none\">\u00a0and Release. Environment management needs to be a full-time job and the efforts should not be shared by IT\/Development and QA Team<\/span><span data-contrast=\"none\">,<\/span><span data-contrast=\"none\">\u00a0especially when it comes to banking projects. Builds need to be managed effectively and tracked with proper release notes. The environment management team and QA Team should be working in<\/span><span data-contrast=\"none\">&#8211;<\/span><span data-contrast=\"none\">sync. The QA Manager should be approving any change that may be applied to the test environment. There should be a published high<\/span><span data-contrast=\"none\">&#8211;<\/span><span data-contrast=\"none\">level environment management plan with all the major stakeholders of the\u00a0<\/span><span data-contrast=\"none\">project,<\/span><span data-contrast=\"none\">\u00a0and everyone should abide by the plan (aka Bible).\u00a0<\/span><span data-contrast=\"none\">The<\/span><span data-contrast=\"none\">\u00a0build frequency should be controlled and consistent with release notes that should contain heads up for the QA and Business teams. There should be a build rollback plan in the event of an un-test worthy build (<\/span><span data-contrast=\"none\">d<\/span><span data-contrast=\"none\">ue to a showstopper bug<\/span><span data-contrast=\"none\">\u00a0or e<\/span><span data-contrast=\"none\">rror in deployment). Pre<\/span><span data-contrast=\"none\">&#8211;<\/span><span data-contrast=\"none\">deployment and Post<\/span><span data-contrast=\"none\">&#8211;<\/span><span data-contrast=\"none\">Deployment note should be sent out to the entire team and a log should be maintained by the environment manager.<\/span><span data-ccp-props=\"{&quot;201341983&quot;:2,&quot;335551550&quot;:6,&quot;335551620&quot;:6,&quot;335559739&quot;:300,&quot;335559740&quot;:360}\">\u00a0<\/span><\/p>\n<p><span data-contrast=\"none\">Another critical aspect is the build versioning that needs special attention.\u202fI would prefer\u202f<\/span><b><span data-contrast=\"none\">A<\/span><\/b><span data-contrast=\"none\">.<\/span><b><span data-contrast=\"none\">B.C<\/span><\/b><span data-contrast=\"none\">\u202fkind of a versioning. A simple but an effective versioning nomenclature.<\/span><span data-ccp-props=\"{&quot;201341983&quot;:2,&quot;335551550&quot;:6,&quot;335551620&quot;:6,&quot;335559739&quot;:300,&quot;335559740&quot;:360}\">\u00a0<\/span><\/p>\n<p><b><span data-contrast=\"none\">A \u2013\u00a0<\/span><\/b><span data-contrast=\"none\">Major release<\/span><span data-ccp-props=\"{&quot;134233279&quot;:true,&quot;201341983&quot;:0,&quot;335551550&quot;:6,&quot;335551620&quot;:6,&quot;335559739&quot;:120,&quot;335559740&quot;:360}\">\u00a0<\/span><\/p>\n<p><b><span data-contrast=\"none\">B \u2013\u00a0<\/span><\/b><span data-contrast=\"none\">Minor release<\/span><span data-ccp-props=\"{&quot;134233279&quot;:true,&quot;201341983&quot;:0,&quot;335551550&quot;:6,&quot;335551620&quot;:6,&quot;335559739&quot;:120,&quot;335559740&quot;:360}\">\u00a0<\/span><\/p>\n<p><b><span data-contrast=\"none\">C \u2013\u00a0<\/span><\/b><span data-contrast=\"none\">Build number<\/span><span data-ccp-props=\"{&quot;134233279&quot;:true,&quot;201341983&quot;:0,&quot;335551550&quot;:6,&quot;335551620&quot;:6,&quot;335559739&quot;:120,&quot;335559740&quot;:360}\">\u00a0<\/span><\/p>\n<p><i><span data-contrast=\"none\">(Build versioning should be clearly highlighted when the testing team opens the application, can be on the Title bar\/Homepage\/Footer etc. This helps testing defects against relevant application versions.)<\/span><\/i><span data-ccp-props=\"{&quot;201341983&quot;:2,&quot;335551550&quot;:6,&quot;335551620&quot;:6,&quot;335559739&quot;:300,&quot;335559740&quot;:360}\">\u00a0<\/span><\/p>\n<p><span data-contrast=\"none\">Within banking applications external environments needs to be managed<\/span><span data-contrast=\"none\">.\u00a0<\/span><span data-contrast=\"none\">There\u00a0<\/span><span data-contrast=\"none\">may be one external QA Environment and\u00a0<\/span><span data-contrast=\"none\">many\u00a0<\/span><span data-contrast=\"none\">internal environments that may be consuming the same external QA\u00a0<\/span><span data-contrast=\"none\">service<\/span><span data-contrast=\"none\">,<\/span><span data-contrast=\"none\">\u00a0<\/span><span data-contrast=\"none\">resulting in reconciliation issues in the\u00a0<\/span><span data-contrast=\"none\">core banking<\/span><span data-contrast=\"none\">\u00a0application. This may pose a critical threat to the overall test results validation. Meetings with the external vendors need to be conducted to eliminate these issues much earlier before the actual\u00a0<\/span><span data-contrast=\"none\">sprinting phase<\/span><span data-contrast=\"none\">\u00a0begins.<\/span><span data-ccp-props=\"{&quot;201341983&quot;:2,&quot;335551550&quot;:6,&quot;335551620&quot;:6,&quot;335559739&quot;:300,&quot;335559740&quot;:360}\">\u00a0<\/span><\/p>\n<p><span data-contrast=\"none\">These basic checks can ensure a smooth sail of the environment from a\u202ftesting perspective of a banking application.<\/span><span data-ccp-props=\"{&quot;201341983&quot;:2,&quot;335551550&quot;:6,&quot;335551620&quot;:6,&quot;335559739&quot;:300,&quot;335559740&quot;:360}\">\u00a0<\/span><\/p>\n<p><b><span data-contrast=\"none\">Final Thoughts<\/span><\/b><span data-ccp-props=\"{&quot;201341983&quot;:2,&quot;335551550&quot;:6,&quot;335551620&quot;:6,&quot;335559739&quot;:300,&quot;335559740&quot;:360}\">\u00a0<\/span><\/p>\n<p><span data-contrast=\"none\">In\u00a0<\/span><span data-contrast=\"none\">many\u00a0<\/span><span data-contrast=\"none\">ways<\/span><span data-contrast=\"none\">,<\/span><span data-contrast=\"none\">\u00a0testing banking applications can be a complicated deal, but in the grand scheme of things if all the aspects of the project are dealt with proper care and planning, many\u202fpitfalls may be averted. If the key\u202fmethods and principles are in place\u202fright from the word go,\u202fit can be beneficial and can have real long<\/span><span data-contrast=\"none\">&#8211;<\/span><span data-contrast=\"none\">lasting advantages. Hiccups will be there (Even NASA has\u00a0<\/span><span data-contrast=\"none\">em<\/span><span data-contrast=\"none\">!) and there is no getting away. It\u2019s the way we take decisions and how we mitigate the risks\/issues makes the real difference. The\u202fright blend of people and processes are key ingredients of a successful testing implementation of a Banking Application Suite.<\/span><span data-ccp-props=\"{&quot;201341983&quot;:2,&quot;335551550&quot;:6,&quot;335551620&quot;:6,&quot;335559739&quot;:300,&quot;335559740&quot;:360}\"><br \/>\n<\/span><\/p>\n","protected":false},"excerpt":{"rendered":"<p>Icebergs can be deceptive when looked at! They encompass a huge mass below the sea level which is around 90% of its actual size, leaving only 10% for the naked eye.\u00a0 How is that related to banking? To answer this question,\u00a0let\u2019s look at an example:\u00a0 When a customer performs an action on\u00a0an\u00a0online banking application,\u00a0the information [&hellip;]<\/p>\n","protected":false},"author":18,"featured_media":14297,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[732,742],"tags":[2171,501,564,565,506,89,27,218,2170,2912,2168],"ppma_author":[3744],"class_list":["post-243","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-bfsi-testing","category-mobile-testing","tag-banking-application-security-testing","tag-banking-application-testing","tag-banking-domain-testing","tag-bfsi-testing","tag-finance-application-testing","tag-mobile-banking","tag-mobile-testing","tag-software-testing","tag-software-testing-for-banking-apps","tag-test-banking-domain-applications","tag-testing-banking-apps"],"authors":[{"term_id":3744,"user_id":18,"is_guest":0,"slug":"niranjan","display_name":"Niranjan Keshavan","avatar_url":"https:\/\/secure.gravatar.com\/avatar\/8a76097a1f10d9dec6dde538119fa8233a41c3f59c0ae09d33e9d5354297a096?s=96&d=mm&r=g","author_category":"","user_url":"http:\/\/www.cigniti.com","last_name":"Keshavan","first_name":"Niranjan","job_title":"","description":"Niranjan Keshavan (Test Manager\u00a0\u2013 QA Delivery at\u00a0<a href=\"https:\/\/www.cigniti.com\/\" target=\"_blank\" rel=\"noopener noreferrer\" data-auth=\"NotApplicable\">Cigniti Technologies<\/a>)\r\n\r\nNiranjan is a Retail Banking and Digital Banking expert with around\u00a012\u00a0years\u2019 experience. He has been instrumental in managing delivery functions for various client engagements focused around Digital Banking Transformations\u00a0and Cloud Based Implementations ( Testing )\u00a0. He has experience of working with cross-cultural teams across varied geo-locations in latest cutting edge technologies."}],"_links":{"self":[{"href":"https:\/\/coforge.site\/cigniti\/blog\/wp-json\/wp\/v2\/posts\/243","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/coforge.site\/cigniti\/blog\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/coforge.site\/cigniti\/blog\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/coforge.site\/cigniti\/blog\/wp-json\/wp\/v2\/users\/18"}],"replies":[{"embeddable":true,"href":"https:\/\/coforge.site\/cigniti\/blog\/wp-json\/wp\/v2\/comments?post=243"}],"version-history":[{"count":0,"href":"https:\/\/coforge.site\/cigniti\/blog\/wp-json\/wp\/v2\/posts\/243\/revisions"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/coforge.site\/cigniti\/blog\/wp-json\/wp\/v2\/media\/14297"}],"wp:attachment":[{"href":"https:\/\/coforge.site\/cigniti\/blog\/wp-json\/wp\/v2\/media?parent=243"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/coforge.site\/cigniti\/blog\/wp-json\/wp\/v2\/categories?post=243"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/coforge.site\/cigniti\/blog\/wp-json\/wp\/v2\/tags?post=243"},{"taxonomy":"author","embeddable":true,"href":"https:\/\/coforge.site\/cigniti\/blog\/wp-json\/wp\/v2\/ppma_author?post=243"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}