7 New Technologies in Banking that Mandate Performance Testing

7-new-technologies-in-banking-that-mandate-performance-testing

A recent report by Ernst & Young titled ‘Global banking outlook 2016 Transforming talent, the banker of the future’ puts across some interesting findings that hold absolute relevance. It particularly highlights the urgency for transformation and reinvention in the banking sector, particularly in this era of low growth.

Interestingly, Technology revolution/transformation is an important aspect discussed in the report.

In terms of workforce predictions, it states that the millennials (born 1981-2000) will dominate the workforce by 2025. They will be mobile, tech savvy, and entrepreneurial. With a view to weigh investments in technology and people effectively, banks should look at three areas, automation of roles, augment individual roles, and develop new skill-sets.

Over the years technology has been viewed as a major game changer for the Banking and finance industry. Online banking, bill payments and related transactions have become a way of life. With digital technologies influencing every aspect of consumer routine, it has indisputably brought a fresh wave of change and innovation in the financial domain.

Digital technologies like mobile, wearables, analytics and telepresence are transforming the overall consumer behaviour and establishing a new phase for retail as well as corporate banking. Two important ground rules that govern the sector are – Security and Consumer experience.

With Cyber Security concerns rising each day, every technology needs to be evaluated for offering secure interface and being resistant against any probable market risks. At the same time Performance is key, as it will determine consumer satisfaction and experience. 

Speaking of Online Banking, Gartner states that “one of the most important reasons the market for digital banking solutions has opened up is that most legacy vendors that offer bank channel applications for both consumer and business customers have been slow to react to new customer requirements and demands of digital banking.”

Saying so, the predictions establish that while secure interface ranks high, desired consumer experience is key to profitability and success for the sector. This has opened up the sector with opportunities for Financial Technology start-ups.

Digital banking platforms comprise a range of services/add-ons, namely, financial management, bill payments, marketing, analytics, and customer relationship management. Gartner perceives open unified digital banking platforms as an emerging technology, when most of solutions pertaining to niche banking system have been existing for a sufficient time frame.

With empowerment, Technology brings tremendous challenges for the banking sector. The challenges be tackled with the right approach towards the emerging technology trends. The key is to bring its relevance for the sector.

Let’s check out the top 5 game changing technologies for the Banking sector that are sure to bring about transformation. At the same time, how the sector can confirm its relevance and ensure seamless adoption for the customers.

  1. Biometrics:

Security is the core of every financial transaction. Mastercard is coming up with a new contactless card with an embedded fingerprint sensor. This establishes the growing security concerns in the sector and also considering the recent breaches.

Banks are coming up with mechanism to spike up the requirement of security features, namely, voice and touch. For instance, Barclays raised security guards in 2014 by offering fingervein scanning for authentication of major transactions.

  1. In-car applications:

Can you imagine having a voice-based bank transaction via a banking application? Yes, Spain’s CaixBank offers the first ever mobile banking application that can be accessed while driving by using voice control functionality. The applications uses Ford’s SYNC with AppLink system and enables the driver to check account balance and do some basic transactions.

  1. Smartwatches/Wearables:

Wearables is the New Black. The relevance of Wearable Technology is growing across sectors. Smart watches, fitness bands, wearable fashion, and much more is creating ripples in the consumer technology space. Banking is no different and is bound to get influenced by this new wave.

  1. Facial Recognition:

Online Banking or any form of banking that is done virtually works with authentication. Banking industry has been experimenting with various ways of authentication to ensure security and desired experience.

Facial recognition could be the safest and the most convenient way to ensure authentication. Chinese ecommerce giant Alibaba believes in authentication with a ‘smile’.  Its facial recognition system has devised ‘smile to pay’ option for its users.

  1. Google’s Smart Glasses:

Google’s smart glasses can be the wittiest option to consider when it comes to tracking your bank, nearest branch, emergency phone number, etc. Spain’s innovative Caixa Bank has already developed a Google Glass app.

  1. Robotics:

 Robotics is another instance of automation for the banking sector, specifically at the branch servicing level. Customers visiting Japan’s Bank of Tokyo are being greeted by a 58 cm – tall robot. Facial authentication being the key to ensure security and customer service.

  1. Video Banking:

While Video banking is confined to banks like Barclays, the US bank is testing Oculus Rift VR handsets to provide customers virtual entry into the branches.

Virtual Reality is the next big thing that is transforming various domains, from gaming to manufacturing. Banking sector can definitely leverage VR to ensure enhanced consumer experience.

These technologies and many more are absolutely overwhelming for the Banking sector. Nevertheless, it is absolutely important to ensure performance while implementing these features within a sector that is so sensitive and works on stringent Federal guidelines.

Performance testing enables you to determine the speed and efficiency of a system/application/software program. The testing process involves quantitative tests, namely, evaluating the response time, the application’s reflexes and the overall functions that the application/software is supposed to perform.

When it comes to adoption of new technologies, Performance testing holds tremendous benefits. It helps answer some key questions.

  • Speed: Is the application/device responding adequately and as expected?
  • Scalability: Is the application/device able to handle a larger load of users at a given point of time?
  • Consistency: Is the application/device showing consistent results with varying factors namely, user ratio, bandwidth, etc.
  • Resilience: How robust is the application when it comes to operating with market risks?

Load Testing and Stress Testing absolutely work wonders while building an application that is market-ready and can take on market risks as well.

Load Testing involves end-to-end performance testing under expected production load. The key objective of the tests is to gauge the response time for critical actions/transactions or business processes. These tests further assess the capability of the application to operate accurately under expected or unexpected load, avoiding any outage/downtime errors.

Stress Testing estimates the load under which a system might collapse or fail to perform. It doesn’t necessarily simulate expected load. It identifies the expected point of failure, where system failures can happen.

There are different types of Stress Tests that ensure that there are no catastrophic failures that lead to major financial losses. Stress Test is one of the most essential load and performance tests that can build a market-ready application.

While the benefits of Performance Testing hold true, experts recommend to incorporate testing way ahead in the development cycle. This approach not only brings down the testing effort, but also ensures quality@speed.

Analysts and market research firms have predicted that the banking industry will be run by robots in the next 10 years. These robots will develop humanlike, inventive problem-solving methods to resolve complex tasks.

Now you can imagine what Performance Testing can achieve in all possible contexts!

Gallop Solutions takes precedence in working with innovative and acclaimed enterprises to build a robust QA set-up and test some absolutely inventive applications/devices. Our performance testing capabilities cover performance engineering, comprising capacity planning, baseline test, load, stress, endurance and benchmarking against competitors, production monitoring and consulting.

Connect with us to effectively test the new and emerging technologies not just for the Banking sector, but for any business domain.

The opinions expressed in this blog are author's and don't necessarily represent Gallop's positions, strategies or opinions.

Ensure Holiday Readiness with Performance Testing

Performance testing

The e-commerce/m-commerce companies, small-medium-large are juggling with tricks to make their presence felt amongst the potential buyers. With greater opportunities and possibilities, retailers in the segment are facing tremendous challenges. One of the key challenges is to provide a compelling and secure interface to the online shoppers. This further reinforces the significance of performance testing for e-commerce sites, particularly before peak holiday season.

Deloitte in its mid-year update made predictions on the six key top trends which are transforming the retail sector in 2016 – Subscription model, delivery, personal commerce, social influence, reinvented TV shopping, internal re-organization.

While competing in this high-octane space, getting the Digital commerce platform ready for the Big Bang shopping season is at the core of every retailer’s business agenda.

Whether it is a brick and mortar store or an ecommerce site, online presence marks the essence of every business strategy today. Checking website performance, load time, application’s performance testing, application load test, and a lot more is rapidly becoming inevitable for commercial success. All these factors play a crucial role especially during high pressure festive seasons, when every small or big portal is trying to grab maximum profits from the market.

A recent news report shared another interesting story in the ever-enticing retail sector. Tesco customer Kate Shepard, a bar owner from Durham was shocked when she discovered that a jar of marmalade she had ordered online had been defaced manually.

The 38 year old later tweeted, “So I had my @Tesco shopping delivered and someone has written on my marmalade, Tesco staff must have a lot of time on their hands!” She further tweet a picture of the Mackays Seville Organge Marmalade, which was scribbled over to read ‘Jimmy Saville’.

E-commerce is definitely tantalizing the shopping tastes of customers, but at the same time, customers are gearing up with new-age defences of Social Media. This is increasingly giving nightmares to ecommerce companies, making them more market-ready.

What could Tesco do in this case? It apologized and offered a full refund with a voucher. This reinforces the earlier point that whether online or offline, performance testing and gearing up for a busy season is not optional, but a business mandate.

External testing in the production infrastructure is the best possible way to gauge the capacity and performance in the real environment. It will further ensure that online apps are giving the required reflexes and performing as expected. Moreover, with brands working towards offering Omni-channel user experience, getting your 360 degree campaign to operate seamlessly is exceptionally critical.

How can brands/retailers build for themselves the confidence to offer seamless and compelling shopping experience and at the same time not succumb to traffic spikes, thanks to the festive upswings, events, or promotions?

There are instances where brands bite off more than they can chew.

In October 2014, Filpkart, India based e-commerce giant, apologized for the glitches on the Big Billion Day Sale. The site faced a heavy rush, resulting in cancellation of orders, delayed delivery, and much more. This resulted in a huge PR dismay for the brand.

Is a comprehensive Performance Test strategy the solution? What is that sought after checklist that can ensure success for Digital Commerce?

  • Know your online customer behavior

From a sheer business perspective, it is important to understand how users operate across the e-commerce site, gauging the peak and fall of activity.

  • Key business processes/flows considered by site visitors
  • Average time of a user on the site
  • User interaction – Shopping Vs. Browsing
  • From where do they bounce/abandon the process
  • Average view per minute/hour
  • Average orders placed per minute/hour
  • Assess the overall traffic patterns, especially against peak shopping events/promotions
  • Flow of traffic from Mobile devices and its impact on the above-mentioned factor
  • Understanding the complexities

While preparing the test strategy for ecommerce sites, it is important to understand the depth of the site and measure the complexities. Ecommerce sites are tremendously complex and geared with various layers of interactions. To ensure seamless performance, it is important to understand various levels of interactions and components. The common areas to focus on while testing are:

  • Application glitches: It is important to watch out for inefficient code, syncing issues, memory leaks, and app dead locks.
  • Database Performance: Being at the core of performance, it is crucial to look out for locking and contention, missing indexes, inefficient queries, managing the memory, and scattered growth of data.
  • Configurations: Assuming that the default settings are barely ideal, it is critical to check for variations between environments and optimize the tuning as per the devices in the architecture.
  • Load handling: With an objective to effectively use hardware, it is necessary to look for algorithms that are not optimized with unused features and capabilities.
  • Determining Connectivity issues: Since communication plays a crucial role and connectivity issues are immense, it is much important to ensure that systems can communicate with minimum bandwidth, the firewall has enough capacity, and the system is ready for varying mobile networks.
  • Bandwidth capacity: Loading the site with rich content for enhanced user experience means that you are inviting bandwidth troubles. Ensure that your site is able to perform and application load test is done with minimal bandwidth and supports varying connection types/speeds even across mobile devices.
  • Compatible Architecture: While designing, the ecommerce site architecture needs to be cautious about unbalanced tiers, technology choices, or scalability issues. At the same time ensure that analytics tracking, payment gateways, accumulated content, or social channels are not affecting the performance of the site leading to any disruptions.
  • Performance testing tools

Performance testing helps determine the speed and effectiveness of a system, an application, a software, a device. It involves quantitative tests executed in a lab environment/virtualized environment to measure the response time or the MIPS (Millions of instructions per second) at which the application will function. Additionally, implement the appropriate tools as per the requirements. There are various Performance testing tools available to execute effective performance tests, to name a few:

  • WebLoad helps you perform load and stress tests on any internet application by using Ajax, Adobe Flex, .NET, Oracle Forms, HTML5 and quite a few technologies. The tool supports performance testing for applications with heavy user load and complex structures, further assessing the functionality and performance of the web application.
  • LoadComplete, an easy and cost-effective performance testing tool, enables the tester to create and execute accurate load tests for websites and applications. It further automates the load tests by recording user interactions, which are further simulated with hundreds of virtual users either locally or over the Cloud.
  • HP LoadRunner, a HP product helps understand and determine the performance and response of the system when under load. The most compelling feature of this tool is that it can create and manage multiple users at a time.
  • Rational Performance Tester, an IBM product, is an automated performance testing tool used to test web applications or server-based applications, where input and output is involved. The tool helps create a demo of the transactions between users and web apps. The statistical information derived towards the end helps analyze and increase the apps efficiency.
  • NeoLoad, a tool by Neotys is used to measure and analyze the performance of websites, where the outcome can be assessed for planning further steps. The tool further helps improve and optimize the Web application’s performance under loaded traffic.
  • Loadster, a desktop-based (web browser based) advanced HTTP load testing tool, is easy to use and record the scripts. With the Graphical User Interface (GUI) you can alter and customize the basic script and variables to verify the response. It enables to emulate large virtual user base to stress test the applications, and further helps generate HTML reports for analysis and detecting performance bottlenecks within the application.
  • CloudTest, a performance testing tool by SOASTA is used for testing websites, mobile apps, APIs, etc. It enables users to use Cloud platform as a virtual testing lab, where multiple developers/users can carry out their performance or load tests on the Cloud cost effectively with the tool.

In conclusion

While the tools make your life easy and build your ecommerce application for a larger audience during the Big Day sales, it is equally important to have the right team with necessary skills to implement a comprehensive Performance testing strategy for the ecommerce site.

Gallop has been extensively working with some leading and innovative enterprises to strategize Performance testing for their business-critical applications. Gallop’s Performance Engineering & Testing teams provide new-age solutions and services to global clients. Our expertise spans across a wide range of applications comprising, client-server, web, distributed, mobile, cloud databases, high volume transaction systems, and highly complex applications.

Gallop’s Performance Center of Excellence (PCoE) provides end-to-end performance testing solutions to help our clients launch future proof applications with high responsiveness, availability, and scalability. Moreover, we have partnered with various Performance Testing tool vendors and enable our clients to choose the right tool based on their requirement and budget. Connect with our experts to get your E-commerce site/Web App/Mobile site ready for the Next-Gen marketplace!

The opinions expressed in this blog are author's and don't necessarily represent Gallop's positions, strategies or opinions.

Chic or Geek, are we adequately testing the Wearable Tech

chic-or-geek-are-we-adequately-testing-the-wearable-tech2

Is Style winning over Substance, or is Wearable Tech here to bring us flawless experience and ease? Interestingly, Wearable Tech’s relevance and application has today gone beyond mere fashion/sports accessories. Mobile World Congress (MWC) 2016, world’s largest and sought after gathering for the mobile industry, showcased some of the hottest trends in the Wearable Tech space.

For instance, at the recently held MWC 2016, some leading tech channels and portals specifically hand-picked a portable device that could fit on a cow’s leg and help farmers to gauge the cattle’s fitness level and address the medical issues before they get chronic. This proved to be a major cost-saver for the farming fraternity, showcasing how technology can empower not just humans, but major sectors at large.

Likewise, Wearable devices are being designed and tested in organizations to help improve sitting postures, concentration, and productivity amongst employees. A research done by Goldsmiths, University of London found that using Wearable devices in office premises could help boost productivity up to 8%..

Alternately, a study that analyzed around 120 employees at a media company for a specified period revealed that using Wearable tech reduced the alertness by 9%, but at the same time the job satisfaction levels increased by 3%.

A smart watch that can give you feedback on you morning jog, a sleep tracker that can help you sleep better, a fitness tracker for your pet dog, or a heartbeat tracker that can determine your overall health, Wearable Tech is engaging on every front.

In a recent episode, BBC Click showcased some chic Wearable gadgets like key rings, phone cases and bracelets with payment chips, a ring wearable that goes with your outfit and syncs in with your iOS or Android device to alert you on calls, messages, emails, or any kind of social media notifications that you might miss if you happen to forget your phone.

As we gauge from these examples and the way the inventions are headed, everything revolves around the intrinsic needs of a human or a living creature. For instance, a dainty looking device designed for women to track stress levels, sleep and overall lifestyle related health issues. This further intensifies the need to strategize and execute a thorough testing effort to ensure flawless experience.

These gadgets are further supposed to sync in with your portable mobile devices to display the required results. Fitbit Alta, is a hot selling fitness band that tracks the steps, the running time, calories burnt, and all titbits related to the body’s fitness. The band has to not just sync in with the jogger’s pulse rate, but also with the Android that you are carrying to display the required results.

The concern is, you have spent a fortune on developing a gadget with all required features and then you realize that it is unable to sync with your Android or iOS. So, testing is not just applicable for the gadgets, but also for the Apps that orchestrate the overall impact.

Is Wearable Tech ready for the marketplace? Is the question to ponder over.

At present, the marketplace for Wearables is all gung-ho and flooded with innovative attempts to make it work with the end users. Considering this scenario, there is nothing streamlining the industry and how it should evolve in terms of performance VS commercial viability.

There are some fundamental questions raised:

  • What will be the behaviour patterns of these devices?
  • What is the data bandwidth required for operating the wearable apps?
  • How will the devices sync with the Apps and function synchronously?
  • How will the device access the Internet and other related devices for data sourcing?
  • Apart from the gadget’s functionality, how will the performance get evaluated?

The solution and the only answer to these popping concerns is Load / Performance testing the applications synchronously with the devices. However, the challenge is that there is no decided or standard platform to test these devices and applications. It is still evolving, as the market evolves.

While established players like Nike+, Jawbone, and other fitness devices like Fitbit continue to provide strong reference points, there is a universe of devices in the market that mandates thorough scrutiny. And this further adds on to the challenges and nightmares of the developers and testers. Let’s check out some key challenges.

  • Bubbling Marketplace: Devices are coming up in the market every day and dying out frequently due to its ineffectiveness in the market. So, there is hardly any strong reference point and any scope of predictions for the future.
  • Absence of a standard platform: Software system implemented for Wearables is varied and not so structured. This requires customized coding and recurring test implementation to gauge the desired outcome.
  • Legacy issues: Wearables at some point of time need to sync with redundant legacy systems that create issues in terms of performance. The major concern is, there is no particular decided approach to resolve this gap.
  • Challenges with Development: Ineffective displays, inadequate data connectivity, poor battery life, ensuring water resistance, building secure interface, and most importantly, designing the right ergonomics are some of the related challenges for developers.

Connectivity and interoperability across devices is a major area of focus, as most of the Wearable Tech depends on Internet connection or a shared Wi-Fi connection to give the desired results. So, during the development of the application and device, requirements related to data connectivity should be considered. Additionally, Wearables might also impact the performance of the mobile device. It would be a tricky situation if the mobile device is connected to 5 wearables and is receiving information at the same time from all of them.

Can it really take on the load?

With no definite way, what are the most effective ways of Performance Testing the Wearables and while designing specific applications?

  • Test Automation for constant vigilance: There is a constant need to confirm the performance of the devices and the results that are getting generated. The only solution is to automate the tests for continuous testing and get speedy evaluations. This will further optimize the code and ensure Continuous Integration. Furthermore, it will ensure maximum test coverage.
  • Service Virtualization can speed up the process: While Service Virtualization has its own implications and relevance in the software testing space, it holds tremendous benefits in Performance Testing. By emulating the environment, the DevOps teams can leverage virtual services instead of the core production environment. This helps in constant and complete testing with the essential components possibly present in the real environment. Moreover, it helps test the interoperability of complex applications in the development process and reduces defects that could hinder the Application/products time-to-market.
  • Load Testing with an Agile approach: While experimenting with new applications and devices, enterprises are looking at cost-effective approaches. The Agile process helps develop higher quality software within stringent timelines and at lowered costs. The objective is to test performance during the development process, while ensuring functional excellence at the same time. If these tests are conducted in the post-production phase, it is bound to incur high costs and kill more time.

With over 10,500 athletes from 206 countries and numerous medals to grab, Rio Olympics 2016 saw many athletes using non-conventional means to build efficiency. Tech portals reported that some Olympic athletes were considering a new wearable called Halo Sports, a pair of headphones to boost their efficiency. Wearable Tech can be found across any or every category and are coming up every day without serious monitoring and vigilance, thus, reinforcing the need for testing performance.

Gallop’s Performance Center of Excellence (PCoE) provides end-to-end performance testing solutions to help our clients launch future proof applications with high responsiveness, availability, and scalability. We have worked with global innovators to build path-breaking devices and applications.

Connect with us for a robust test strategy and gain faster time-to-market.

The opinions expressed in this blog are author's and don't necessarily represent Gallop's positions, strategies or opinions.

Testing the Unknown. Is Performance Testing the Answer?

testing-the-unknown-is-performance-testing-the-answer

Self-driven cars, self-instructing drones, or Tony Stark’s super-competent computer J.A.R.V.I.S. is soon becoming a reality for the world. Yes, the next thing you own could be any artificially intelligent gadget from the famous Marvel comic collection or a time and space crashing machine from Disney’s Tomorrowland.

The future has it!

News is out and twitter is trending with photos and videos of Google’s Burrito Delivery drones getting officially tested in Virginia. The drones are being tested for the capacity of weight it can carry, overall management, and coordination. With new age technologies being implemented for everyday jobs, one day you can surely expect a drone hovering over your head to deliver a pizza.

Literally speaking, testing performance ensures that the pizza is delivered in your hands and does not go down the chimney!

Uber is just gearing up to introduce a fleet of driverless cars in Pittsburgh, a former steel town and is on the way of becoming the first city to explore autonomous vehicles. It has planned to use around 100 modified Volvo sport utility vehicles for passenger trials with human monitor behind the wheel. Kind of ensuring convergence of human and technology. It proved to be a 21st century technology leap when Pittsburgh authorities helped the company to lease a large plot near the city’s riverfront to build a testing track.

A city of 306,000 seems like an ideal ground for Silicon Valley’s wildest experiments. Too soon to say so! It has also triggered worries amongst the populace regarding safety and regulations for testing a premature technology.

Is cynicism a prelude to any innovative venture?

How a city reacts and accepts disruptive tech experiments like driverless cab services is definitely a phenomenon to watch out. At the same time, there are quite a few tech and auto companies, who are testing their own driverless fleets in cities like California and Michigan and going through their own set of challenges.

Perfection is the key. The very reason testing is taking a front seat in the overall development process. Specifically, Performance testing makes a large impact by determining the effect of any new technology/device by gauging various factors. If we can say so, Performance testing refutes the hands-off approach to overcome every possible glitch.

In case of Uber, the tested cars are already on the roads and picking up commuters in Pittsburgh. What is the mechanism if the vehicle stops mid-way in traffic? Is there automated messaging to the base station? What is the contingency plan for any such possible breakdown?

Performance testing helps you answer ‘ifs & whys’ of every glitch that you may expect.

Performance testing has been helping CTOs identify, evaluate and authenticate the speed, consistency, and dependability of the system to finally deliver a bug-free software/device. It covers an entire spectrum of factors that determine quality, load, stress, and soak testing to volume testing at various stages of a software’s development. It further helps test at various levels of the application to measure factors like capacity analysis and server response time, risk management testing, which can act effectively to confirm the performance of the new age devices.

It helps CTOs/development teams monitor and assess critical aspects like response-time, infrastructure capabilities, Network bandwidth, risks involved, and much more that can determine seamless functioning. A wholesome testing approach helps address performance defects and helps meet sporadic demands at every stage of the SDLC.

Performance testing methodologies further check predictive performance of an application to run flawlessly and rush faster to the market.

With perspectives and tools evolving every day, experts are effectively leveraging open source performance engineering tools to slice off the turnaround time by monitoring the overall Software Development Life Cycle (SDLC) process.

Soak Tests, Load Tests, or Stress Tests?

New age technologies and tools have been increasingly posing a challenge for the testing community. A particular type of testing or performance testing mechanism might not help to deliver a particular result. However, what could work magically, is a combination of various approaches for deriving the desired outcome.

Load tests and Stress tests have been increasingly used to evaluate a software or device’s stability, scalability, and responsiveness under excessively coercing and stretching parameters. Devices that are bound to determine the future of a particular service domain need to get tried and tested under equally stressful real-time environment with all possible unruly factors.

Soak testing is considered a type of Stress test to mainly check the response of a particular aspect under test or mostly an emulated environment over a particular time span. Inferences derived during Soak tests help improve the characteristics of the application/device.

Brands can possibly implement Soak tests for months together and simultaneously apply external factors to gauge the performance. This further confirms the system’s consistency and various other performance aspects over a longer and stretched time span, particularly evaluating a system’s stability over a much loaded period of time.

Leveraging the Virtual Environment

Working in an emulated environment can work wonders while testing services/devices that require a lot of factors to work together. Service Virtualization helps developers and testers test applications/software in a constantly evolving environment. It helps test against a wide range of functional and performance factors with a minimum set-up.

With service virtualization, you can simulate the performance of every dependent factor and control them. It further helps to determine the impact of the ‘virtualized’ dependencies to assess various high risk factors required to test the Application Under Test (AUT).

An experienced and capable testing partner can offer a virtualized Test environment as per your test needs and can scale them as per your requirement.

A comprehensive test strategy helps bring down the scepticism towards every innovative attempt and increase acceptance. What you need is a reliable testing partner to work with and devise the best possible approach.

While an inclusive Performance testing strategy will continue to kill the bug around all tech innovations, being a ‘Doubting Thomas’ always helps to bring the best from your testing efforts.

Gallop’s Performance Engineering & Testing teams hold massive experience in providing cutting edge services to global clients. Gallop is equipped with a dedicated Performance Testing CoE that focuses on providing solutions around performance testing and engineering. Connect with us for a complete performance testing strategy that accelerated time to market without compromising quality.

Save

Save

Save

The opinions expressed in this blog are author's and don't necessarily represent Gallop's positions, strategies or opinions.

How Digital Assurance & Testing Help Build Agile Enterprises?

Digital assurance and testingPokemon Go has been creating buzz since July 2016 post its launch in select countries and is by far the most popular mobile game in the US history. Numbers and popularity charts could be working out for Nintendo, however, some enterprise-level IT security managers have a different take on this app. While the trend of getting hi-end mobile devices and related accessories at workplaces continues, gaming apps like Pokemon Go are fizzing concerns around Server hacks, unauthorized permissions, and more.

Though Pokemon Go seems like a recent and peculiar threat, industry enthusiasts opine that any such application loaded on a personal device within an enterprise can pose a potent risk.

There is a chaotic hustle around making enterprises/workplaces more Agile and flexible to drive productivity and ease of operation for employees. Bring Your Own Device (BYOD) is considered as a catalyst for making enterprise more user-friendly, flexible and more responsive. While we say so, the major challenge is for the IT security teams with issues concerning the overall implementation of policies and effective security measures to determine and manage security lapses.

As they say, Bring Your Own Device; Not your own Virus!

Ready for an Agile boost?

The Agile Manifesto published in 2001 by a niche group of IT leaders evaluates the core principles of an Agile set-up for any enterprise. Fundamental question posed, Is your enterprise ready for the Agile run?

The underlying principles mentioned to asses or determine the impact of Agile implementation within an enterprise are organizational culture, working style and overall attitude, which will prove to be a digital enabler in the current high-speed, competent, and self-made digital economy.

With phenomenal changes across world economies and overall customer experience, businesses and organizations are being pushed towards the edge of the profit churning cycle. There is a growing need to redefine the way the workforce operates and delivers. Policies and processes that enable speed and better accessibility will gain momentum in serving their customers (both internal and external) better.

Thanks to the changing dynamics of consumer expectations, businesses are getting more flexible and robust with their systems at the same time.

Getting ‘digitally’ Agile

A recent Gartner research infers that almost 42% of organizations are expected to increase the spending on mobile app development by an average 31% in 2016. Digital technologies are today connecting enterprises, redefining the work dynamics, and addressing almost every aspect of the business operations.

At a recently held ASEAN Business and Investment Summit (ABIS) 2016 in Vientiane, Laos, President and Managing Director of Bosch Southeast Asia Martin Hayes said, “We need effective leadership to overcome the challenges in an uncertain environment. Both business and political leaders should possess the knowledge and capability to be agile, adaptable and resilient” The session was based on the theme ‘The Future of Technology – Focusing on the Digital Economy’.

As the work environment gets digital and more connected, there is a focussed requirement for flawless user experience and robust security measures. What integrates and orchestrates every digital element together is ‘Digital Assurance’.

Digital Assurance enables every device, application, Web / Mobile platform to interact seamlessly within the ecosystem. The ultimate outcome is smooth and undivided user/ customer engagement that leads to the desired action. At the same time, the user should be assured about the data and system’s security from any probable hacking attempt.

Taking into perspective the security aspects and user experience, the need for Digital Assurance and testing has taken a massive leap. It is a critical piece in the overall Digital Transformation and Digital Assurance jigsaw.

With digital technology touching every aspect of the business operations, Digital Assurance & testing has got highlighted as a front-end function that is rapidly influencing the product / application’s design and development.

Digital Assurance & Testing for sustained and secure growth strategy

In 2015, Starbucks faced a major software glitch due to an ‘internal failure’, which resulted in 60% of stores in the US & Canada getting shut down. The failure took place during a routine refresh, where stores were unable to process payments and at a point of time even gave away the coffee for free. Practically, the registers were used to place orders and store cash. Eventually, it accumulated extensive data to carry out tasks like processing credit cards, placing orders at kitchens and keep a track of the loyalty programs.

Instances like these can cause nightmare for international brands that are digitally connected and depend on the digital platform for their survival. Assuring the performance of such systems with robust testing strategy is indispensable.

 An enterprise can get Agile, but at what cost?

Answer to this ever-provoking question is Digital Assurance. Understanding the implications and benefits of Digital Assurance & testing in an organization’s digital landscape is critical and definitely the need of the hour!

Concurrently, it is important to ensure that the right testing strategy is adopted to get required results. Here, we try and address a few of them:

  • Quality models for the digital era:

The Digital era is redefining the role of testing in the overall development landscape. With new age methods like Shift-left, testing is taking a holistic view and understanding various dimensions of consumer experience. Resultantly, there is a growing need to adopt the best and contemporary testing technologies to check issues/bugs within the digital sphere.

  • Omni-channel testing:

Omni-channel application testing focuses on the ensuring enhanced digital experience of the users. Aspects like performance, ease of use and functionality play a key role for any successful user experience. Omni-channel interactions work profoundly for connected devices and multiple digital touch points.

  • Testing solutions for agile projects:

Within an agile environment, the testing needs have to align with the intrinsic requirements. Test Automation with Service Virtualization work effectively to minimize the glitches and minimize downtime.

  • Cloud for testing:

Cloud and virtual environment for testing are increasingly getting effective for testing applications / solutions that can accelerate performance and ensure seamless integration. So, there is a growing demand for cloud-based and virtualized environment for testing large scale enterprise applications.

Enterprises are getting more connected with the sole push to get more agile. Digital Assurance is an ever-rising need for ensuring performance in this connected environment. In terms of testing strategy, there will always be a compulsive need to bring quality, automation and foresight while deploying business critical applications.

Gallop has worked with enterprises of all shapes and sizes and has brought them to speed in this digitally charged and connected ecosystem. Global enterprises have leveraged Gallop’s frameworks for continuous test automation and performance testing to improve their Quality Assurance and Testing practices.

Connect with Gallop experts to get your business digitally Agile.

The opinions expressed in this blog are author's and don't necessarily represent Gallop's positions, strategies or opinions.

FinTech Revolution and the Growing Need for Performance Testing

FinTech Revolution and the Growing Need for Performance Testing

During his tenure as Chief Economist at the International Monetary Fund, Raghuram Rajan (now the Governor of the Reserve Bank of India) delivered a controversial paper that addressed certain issues in the financial sector and introduced the term ‘tail risks’ and its impact on the banking sector. These and many more reasons were addressed, which could lead to global financial crisis.

This was followed by the global financial crisis of 2007-09, considered as the worst after the Great Depression of the 1930s. While we could focus on few factors, it was practically an outcome of combination of various factors that resulted in the crisis. Post the entire turmoil, there was a conscious awakening in the financial services segment and many necessary amendments and reforms were made.

Financial Technology, popularly referred to as Fintech, are organizations / start-ups that leverage various technology platforms to efficiently offer financial services. Essentially, Fintech is considered as the ‘fourth industrial revolution’, which has impressively created waves even at a nascent stage.

Fintech firms are here to revolutionize and offer a secure interface for taxpayers and the customers in the vast economic diaspora. It is a joint venture of software geeks and Venture Capitalists, who plan to create a phenomenal shift in the way economies perceive the financial services market.

This phenomenon is definitely creating a buzz with the kind of investments it has attracted. It is estimated that these start-ups have attracted $12 billion of investment in 2014, which is $4 billion more than in 2013. Goldman Sachs estimates that the total worth of the Fintech market is worth $4.7 trillion. Fintech firms cover an entire gamut of services in the financial services domain, namely, online utility payments, wealth management, and Crowdfunding.

Fintech start-ups have successfully got their hands on the pulse of the consumers today, where there is a soaring demand for credible and secure interface for accessing digital services.

This growth and upsurge has been triggered by various surveys and studies done by market research and analyst firms. An analyst report projects that the global Fintech investment market is estimated to grow at a CAGR of 54.83% during the period 2016-2020. By drawing this kind of attention, the Fintech revolution has attracted eyeballs and massive expectations.

As we understand, the Fintech industry segment is evolving rapidly and the growth index has been set. Now, the way forward is to focus on the most crucial factor – Customer Satisfaction. Today, Fintech firms are in the process of conceptualizing and offering business critical financial applications for the banking sector, financial institutions, and even directly for the customers.

But as they say, with great opportunities, there come greater Challenges!

Operating in the financial services domain poses a lot of challenges, as it entails tremendous risks. Irrespective of the domain of business, Fintech firms deal with sensitive data and customer base to process and serve. Secure interface and robust performance defines the success factors for this domain. Additionally, the industry has to adhere to various compliance guidelines and regulations governing the financial services sector.

Consequently, testing the performance of these business critical applications is imperative for evaluating their speed and effectiveness in the marketplace. Specifically, in a socio-economic environment which is highly volatile and prone to risks.

For instance, while dealing with banks and financial institutions, Fintech firms have to conform to various compliance issues of the banks. This specifically pertains to hosting on the Cloud.

In such an ecosystem, it is essential to collaborate with a strong and experienced partner for a comprehensive testing framework and strategy.

Let’s encapsulate the compelling reasons for Performance testing and its importance.

  • Dealing with sensitive financial data
  • Managing complex customer database
  • Mitigating risks across a digital platform
  • Implementing Compliance / Regulatory issues in the financial domain
  • Managing performance of critical applications across devices and environments

Apart from the various reasons for Performance testing, we will also shed some light on the best practices in testing. These practices can help ensure seamless performance of business critical applications that are being brought to the market today by Fintech firms.

Shift-left for effective Performance Testing

Performance of a software or application comes down to the phrase ‘now or never’. Your application may fulfil the functional aspects, however, it is important to gauge whether it is been done in a particular time frame and under a particular environment. This is where the challenge arrives.

Performance Testing or Load testing (for critical applications) is crucial in the financial services domain. Experts with a contemporary and fresh perspective recommend that Performance testing should start early in the Software Development Lifecycle (SDLC). The boons of this approach are validated and endorsed by experts.

The Shift-left approach brings down the changes of major architectural changes and reformation at the final stage. It takes into consideration every functional and performance related aspects along with the development of the application / software. Ultimately, this results in timely solutions that ensure cost-effectiveness. Rationalizing the costs is, and has been, one of the concerns of every start-up organization today.

Shifting Performance Testing way early in the testing lifecycle ensures cost-effectiveness without compromising the quality.

Service Virtualization for effective Performance Testing

There are many tools available to simulate the environment to Load / Stress test the application and gauge its performance. Performance testing helps stress the application under normal as well as excessive loads, which helps in estimating the possible impact on the application and its performance.

Service Virtualization emulates various heterogeneous components in a particular environment for the Application Under Test (AUT). This further aids the Performance testing efforts, as it helps to test the application against an array of functional and performance conditions, which is scalable on-demand.

Collaborating with an experienced testing partner also gives you access to an emulated test environment, where small and large organizations can test their applications with a minimum set-up.

Testing Performance on the Cloud

Fintech ventures have to adhere to guidelines and regulations defined by the financial world. The major challenge occurs when business applications and sensitive data is loaded on the Cloud. Testing in a Cloud environment comes with its own set of challenges that require expertise on the part of the testing partner.

Performance testing on the Cloud computing environment comprises of testing the network, the server, the database, and the application. The testers are required to check the interaction amongst various components in the ecosystem. At the same time, it is important for the tester to anticipate risks and gauge the application’s performance in an unknown and alien territory.

Nevertheless, Performance testing on the Cloud also comes with its intrinsic benefits, typically, lower capital and operational costs, accessibility for distributed development teams, and effective scalability.

Thus, ultimately, what is a Fintech’s core secret to success? If defined, the underlying purpose is to offer innovative services with high security and by aligning with stringent compliance standards. Gallop’s dedicated Performance Testing CoE focuses on providing solutions around performance testing & engineering for our global clients. Collaborate with our experts to devise a comprehensive testing strategy.

Save

Save

Save

The opinions expressed in this blog are author's and don't necessarily represent Gallop's positions, strategies or opinions.

Stress Testing ERP systems for Operational Excellence

Stress Testing ERP systems for Operational Excellence

Organizations, or enterprises, are like ‘brick-and-mortar’ on wheels. They are in a constant state of work-in-progress. This requires various elements and functions of an enterprise to work seamlessly on a day-to-day basis, which ensures consistent growth with continuous enhancement. Enterprise Resource Planning (ERP), a business-management software helps bridge the gap between all the functions to set the organization into motion as an integrated system.

 

Today the relevance of ERP has gone beyond the manufacturing industry, from where it began. It is instrumental in integrating and automating various back office functions, namely IT, human resources, operations & various administrative services. This also inherently implies that any hiccups in the ERP software may lead to disruption in the functioning of the organisation.

 

An important question to bear in mind is what could be the best possible solution or preventive measure for implementing a seamless ERP system?

 

Experts suggest ‘Stress Testing’ or ‘Performance Testing’ before it goes LIVE, which often goes unnoticed while the implementation is taking place. The term ‘Stress Test’ holds more relevance in the context of critical software, for instance, Web interface for Retail banking or some critical software for an Airline.

 

The reason being that Stress Testing emphasises on robustness, readiness, and error handling capacity of a software. In essence, software that has been stress tested performs flawlessly even in business-critical situations where things are falling apart.

 

Following is a checklist that answers the question ‘Why Stress-Test’ and how?

  • Readiness check: Stress Testing, a software testing activity ensures that the chosen ERP solution is enterprise-compatible-ready. It is important to confirm that the software operates effectively in a real production environment. ERP testing is generally performed in isolated settings in fragmented subdivisions of the entire eco-system. It is critical to test it in real environment, where it performs under pressure and performs as expected.

 

  • Planned failure: It is important to plan the testing and segment it – specific use of the software, kind of transactions and determine the expected results. When you plan for failure to occur, you are ready to rectify and avoid similar errors in the future. Remember the adage – ‘Failing to plan is planning to fail’?

 

  • Open Communication platform: An open communication environment for all users is crucial, as it will bring out actual feedback and lead to steps for resolving the same. Experts suggest that this could be done by assigning a (Stress Test) Manager to answer and record these questions for future reference.

 

  • Resemblance to Production: Considering it is critical to get actual-environment-performance from the software, it is advised to perform stress testing on a server that closely resembles your production server and not a server merely used during training period.

 

  • Planning the Network and required groundwork: Before you plan the stress test, it is important for the internal team to get a quick check of the required network and get the actual production environment in place for executing performance testing activities.

 

  • Dealing with External factors: Normally, the external or third party factors (if relevant) are skipped during the testing process. So, it is absolutely imperative to consider unique situations occurring due to external factors and incorporating them during the testing process. It would be difficult to do the same after the ERP system goes LIVE and could lead to waste of time and costs. This approach also gives the enterprise a holistic view of the ecosystem in which the software will operate in the future.

 

ERP Testing Ecosystem

As they say “A stitch in time saves nine’’

 

What if there is an absolute rush from the concerned stakeholders to go LIVE, which somewhere undermines the testing time and need?

Let’s understand the repercussions.

 

  • ‘We will fix it later’, does not make sense: It is important to understand how it works in the actual environment, as fixing it later can lead to exhaustive tons of rework and could incur costs.

 

  • Test run for the users: Users need to get a hands-on experience with the software, which they are probably going to operate on a day-to-day basis. If the software goes LIVE without any practise, the users will have to dive in without any required training or hand-holding. This could lead to problems in handling issues and unnecessary consumption of time.

 

  • Plan for the outcome: If you have no plan and testing done to reach the desired outcome, it will lead to hiccups during the implementation. So, it is recommended to reach the finish line before you even start the actual race!

 

  • Check the Checklist: It could be a checklist or a task list. It plays a crucial role in testing all the aspects of the ERP solution and save you during error-handling situations. A meticulous review of this list along with the internal team is crucial.

The ultimate solution for this to devise a Test plan.

 

Whether it is a new implementation or merely an upgrade, the test plan helps you sail seamlessly through it and answers even miniscule queries such as:

 

  1. What is expected from the ERP solution?
  2. Do the users know their specific roles and responsibilities in the entire system?
  3. How can you collaborate with your ERP partner to develop a test plan and execute it effectively?

 

Though this might sound quite cumbersome, it will definitely ensure effective implementation, operational excellence, and a seamless experience for all the stakeholders.

 

Most importantly, it is best to plan for the worse. It is impossible to evade errors completely. However, expecting the worse and testing it, makes you more confident and market-ready.

 

Gallop holds extensive experience in ERP Testing and has helped clients get the best possible outcome by implementing the software in a test environment. This has significantly enabled them to mitigate risks and achieve cost-efficiency resulting in attaining Operational excellence.

 

Connect with Gallop experts to devise best in class ERP Testing strategy for your organization and experience a smooth transition.

The opinions expressed in this blog are author's and don't necessarily represent Gallop's positions, strategies or opinions.

How to Find Defects Even Before Coding Starts

how to find defects even before coding starts

 

A popularly used idiom states, ‘Being an early bird is better than being a night owl’. This might not click literally, but, the idea is that in today’s competent software development scenario it is considered beneficial to plan testing along with the process of development. ‘Start testing early’ is one of the principles in the software development life cycle. In this article we intend to evaluate the advantages and logic behind starting the testing process way ahead in SDLC. The underlying motive is to help identify defects and issues before the production/coding starts.

Testing domain experts address testing as a skill, which should be honed time and again. It evolves as per the requirements and challenges in a concerned project. The new school of thought suggests that testing starts early in the development stage, which can help identify defects in the initial stages. One of the key reasons being that it is an expensive affair to resolve issues that get spotted later in SDLC.

The Standard Process

A standard software development life cycle plan based on the Waterfall model usually entails the following:

  1. ‘Planning’, where requirements are captured and requirements are assessed.
  2. Freezing the requirements and analysing them.
  3. Actual implementation (coding) starts in this phase.
  4. Testing – the stage where testing of a product practically starts.

This being a standard process, it may differ from project to project. If the project does not go as planned; overall Planning, Analysis, Design & Coding takes more than the estimated time causing hurdles for the overall project planning. This would happen in situations where the project has to be delivered under stringent timelines.

In such situations when the release date is frozen and there is no scope of flexibility, it results in immediate and massive impact on the testing and quality of the software / application. At the same time, customers are being promised a robust application, which determines the success of entire project and ultimately commercial success for the customer.

What’s the Solution?

So, the only logical way out is to align the testing alongside and start it way in advance of the development process/coding.

In this scenario, organizations are witnessing a cultural shift with Agile Development methodology and DevOps. While DevOps bridges the gap between IT operations and Development, the Agile approach encourages progressive planning and development for constant enhancement. Moreover, it emphasises on keeping a swift and flexible approach towards change.

With this approach, testing gets embedded into the system, which helps in managing defects much in advance. It also offers a holistic approach towards the overall software development process. Additionally, the ‘Start Early Testing’ strategy works wonders as it soaks in feedback from inception and emphasizes on keeping the quality bar high.

How can this be planned?

  1. Analyze your test result: If you do not ignore the test results, it ultimately helps you to understand the root cause of any ‘failed’ result and provide solution at an early stage.
  2. Expand the test coverage: While testing an application, it is advisable to maximum the testing process across the application.
  3. Segment the AUT: With a view to derive maximum mileage out of the testing process, the Application Under Test (AUT) can be broken down into segments. For instance, breaking down a desktop application for segmented testing purpose.
  4. Writing test cases for better functionality: By putting down the test cases for valid and invalid conditions, it becomes possible to understand and cover the various behavioural aspects of the AUT.
  5. Start off on the right foot: A tester should ideally approach the project with an attitude to find defects, which will leave no scope for error and the application gets tested in a fool proof manner.
  6. Constantly share Test cases with developers: It is important to share the test cases with developers before the coding starts, instead of keeping it with you till the final application release for testing purposes. The test cases will enable the coders in the development process and reduce duplicity in work at a later stage. Sometime the developers are not equipped with the right test cases, so, this approach of sharing enables the developers.
  7. Performance testing for critical applications: It is suggested that the applications requiring critical response should be tested from the beginning. Performance testing comes to rescue for such instances as against Manual testing.

Rewards of starting early testing:

  • It enables the teams to understand the scope of work / testing needs. For instance, few items can skip the testing process considering they won’t get impacted.
  • Testing at requirement stage makes the process cost effective and rational.
  • Writing test cases way ahead in the development cycle helps solve them in time.
  • It helps quantify the scope of the problem.
  • It further helps prepare the test environment and prevents further delays and gives sufficient time to handle any unknown risks.
  • It provides more time for the testing team, which doesn’t compromise the quality of the software / application.

‘Quality is built in, not added on’.

This implies that aligning the testing activities with the development process helps address bugs and gives utmost importance to the quality aspect.

Early testing for identifying defects / issues

  • The Early testing concept ensures that testing becomes an integral part of the overall development process.
  • Planning the testing phases and schedule from the initiation of the project is a key step
  • It is important to estimate the requirements for System testing / UAT and at the same time test cases should be prepared.
  • Test preparations must begin before the actual testing process starts.
  • A tester should start identifying defects from the requirement collection stage. This should be executed through the analysis and design stage as well.
  • Proceeding from the Design stage, Integration testing cases and Unit test cases should be completed.

What do we infer?

When the testing process starts early, it is easier and cost effective to identify and address the bugs as it is cheaper to fix bugs at an earlier stage as against at a later stage. For instance, if an issue / conflict is found in the requirement stage it will be lot easier and feasible to handle it at that point. On the contrary, if the defect is found at the maintenance stage when the product has already gone LIVE, it is bound to incur higher costs.

An Agile approach helps you to get the feedback cycles rolling early on by involving the customers much in advance. Though there is a thin line separating Agile & DevOps, those considering the Agile approach might be much more acquainted with DevOps. Agile principles can be implemented effectively on the development and QA process, however, it is a challenge to incorporate it on the operations side. This is where DevOps comes into play to bridge the gap.

Is your enterprise planning to implement an Agile Test Automation strategy and looking out for a competent partner? Gallop’s team of test automation experts would be excited to collaborate with you to build a robust and tested strategy.

The opinions expressed in this blog are author's and don't necessarily represent Gallop's positions, strategies or opinions.

Creating a Cloud Load Testing Strategy for your Enterprise

Cloud Load Testing Strategy

Cloud Load Testing continues to be an increasingly discussed and important topic. Nearly everywhere I go, questions arise as to: what, why, how, and when these capabilities are important. Perhaps you are looking for a quick read to understand how to start defining a Cloud Load Testing strategy for your enterprise. That is what I am setting out to do in this blog and provide to you.

1. What are you delivering to your end users?

As an end user, I always wonder, why is it that organizations want me to find their defects? Not sure if you have had this same experience, but surely you have, and I am sure your experience is equally as frustrating…if not more.

So as an organization, we need to think about ‘What are we delivering to our end users?’ because if we don’t, we can be sure our competitors are. Most successful organizations with longevity have a ‘best intent’ to deliver valuable products / services to their end users at a fair price.

Thinking of and recognizing the results they are delivering against this ‘best intent’ is often not done. This limits the continuous assessment and feedback of the market and performance of their products / services in the hands of their end users.

So, what are you delivering, how do you get feedback, and how are you continuously improving your end users experience? The reasons I ask this question is simple; what if you had a way to capture these results from production, then replay them across your pre-production environments, getting results you could use to optimize your applications for maximum value to your end users? Now won’t that be really good for the business!

2. Why do you spend cycles proactively ensuring it works?

Consider your position in the market, what the customers are saying, and how your competitors are constantly improving. Do you even stand a chance if your strategy is status quo? I think not, and now is the time to figure out how to pivot and proactively make a difference…or else your book will end at Chapter 11.

With the Olympics and Holiday Shopping as two large upcoming events, many organizations see these as make or break, and are seeing this as a reason to spend cycles proactively ensuring their systems are working. Of course, with these events (and others like them) volumes are going to be extraordinarily high; which if your business can hold up to the increased demand, there is much to be gained in a number of ways. Do you measure any of these ways today?

Perhaps you have ways to correlate flows, transactions speeds, downtime, user sentiment, employee satisfaction and the like; to that of revenue, brand value, competitive advantage, customer (acquisition and retention), employee satisfaction, and user sentiment. In today’s organizations, this is typically not the case, and an area lacking which can result in exponential returns.

Of course, perhaps you are thinking “Yeah right Todd, easier said than done.” Would not be the first time I have heard that by the way. My suggestion, let’s start with one flow; perhaps measuring the correlation between ‘transaction response time’ of a specific page on your site or app, and that of ‘revenue’ related to that system. I believe when you start to look at the trend, and find quick ways to improve that ‘transaction response time’, you will be shocked to see the change in ‘revenue’…even if only 1%, what does that mean annualized for the organization and you? [that answer is often measured in millions]

3. How are you maximizing value, efficiency, cost, and time?

Everyone opens bananas differently. And, is there really a right or wrong way? The objective is to get to the edible fruit and nurture your body with vitamins and other goodness. Whether you start with the stem or the bananus, the shared goal is the same; there is an easier and better way, how are you doing it?

In this metaphorical reference to proactively working to maximize value, efficiency, cost and time is a very strong relationship. Again, most if not all organizations with paying customers are thinking about these factors, and working proactively to bring the best end user experience.

Along this path, whether primate or human; we are learning by doing, and observing the results, then repeating. Organizations and individuals are evaluated on how well they maximize the value of investments, along with efficiencies being built-in to lightweight processes, reducing the costs to an appropriate level, then spending only the amount of time needed to maximize the overall equation.

In a recent poll, 58% of individuals opened the banana by the bananus. This is the same behavior observed by primates. Not saying there is a right or wrong, just a majority. Where do you count yourself, and why? Is it because of how you are doing something…which could be done better another way?

4. When do you focus on these capabilities? 

“Always, at the beginning and throughout”…that’s what I wish I heard. Sadly, when the topic of working proactively to ensure a good performing experience for your end users arises, it is often something raised after a massive production incident of some sort.

Another common topic that is risen has to do with ‘highly skilled resources’ and/or ‘scheduling to have a scenario run’ as excuses as to why this has been deprioritized and not done. Seems this is another huge limiting factor to when people can run these types of tests and get the results they need, so as to improve the end user experience proactively and earlier.

I don’t know what your personal experience has been…but, when “it’s hit the fan” most CIO’s and Business Leaders are NOT saying ”Glad we did not waste time and effort thinking about performance for our end users.” It is often “How will you prevent this from happening again!” When this happens, it is a great opportunity to have a prepared response, so you can appropriately address the immediate concern, and the future for the organization and your end users.

In short, this consideration is something that should be built-in from the beginning with accountability and responsibility across the technology and business teams to the end users. Making this a reality is a bit of a cultural adaption, but having visibility on the impact this has on your organization, enables you to leverage this tipping point for the moment for the beginning of a transformation.

In the four (4) above points we can see why the capabilities of Cloud Load Testing would be important to ensure that the end user experience is optimum. There are a number of reasons why organizations find Cloud Load Testing as an easy adoption and high value. I have outlined five (5) of these below.

  1. Burst: Leveraging Cloud Load Testing as a way to supplement your existing load and/or performance testing capabilities. For example, perhaps you typically run a 1000 virtual user test, but for an upcoming event, you want to ensure you can handle and tune for a 5000 virtual users’ scenario. Rather than purchasing an additional 4000 virtual users, simply leverage Cloud Load Testing to drive additional traffic to your application under test only for the required period.
  2. No Infrastructure to maintain: By using the capabilities of Cloud Load Testing, you are leveraging ‘The Cloud’ to host your load generators and engines, so maintaining a separate infrastructure for this capability is no longer required. Build and maintenance of these core infrastructure components is the responsibility of the vendor you are using, as they are responsible to deliver this as a service to you. In some examples this is a significant savings of capital and operational expense.
  3. Integrations: As this capability has been further adopted broadly over the years, so has the demand across the varied stakeholders. Resulting from this has been the flurry of integrations, which now makes it very simple to schedule, execute and report on Cloud Load Testing results. This is because now it can be triggered from any number of locations including: IDE’s, Build Systems, Quality Reporting Systems, Load and Performance Tools, and more.
  4. Run concurrently with existing load test: Scheduling and shared resource models have increased the complexity and reduced the availability of load and performance testing resources (people and tools) in the past. Now with Cloud Load Testing, this capability is available exponentially, and can be triggered by anyone provided with access to do so. This capability along with Lifecycle Virtualization has enabled teams and organizations to introduce continuous testing scenarios with an extremely reduced costs model.
  5. Adding on supplemental testing types: When driving fast and adding value, often others will turn to you for considerations on how to help solve for other challenges. One of these I have often run into is, “If you can do this with performance, can you also add: Functional, security, usability, etc.?” Well, the answer is yes. And, quite frankly, I wish more people would think this way. It makes you ask some hard questions about what your production environment is like, and how your end users will experience life with your capabilities. Just imagine, what it would mean for your organization and business if you could add performance, functional, security and usability as all capabilities under a single test with a single result which runs continuously. The time is now!

*Other resources:
Blog: How Cloud Load Testing helps you deliver amazing software
Trial: StormRunner Load (trial)
eBook: 2015-16 State of Performance Engineering
Book: Effective Performance Engineering Book

gallop-software testerAbout the Author:Todd DeCapua is the Chief Technology Evangelist with Hewlett Packard Enterprise and cofounder of TechBeacon.com thought leadership site for IT Heros.

DeCapua is a seasoned software professional with 20+ years of experience in IT applications development, IT operations, technology integrations, channels operations, and business development in several domains, including Mobile, Agile, Cloud, and Performance.

Over the years Todd has transformed three organizations to Agile/DevOps, consulted with 100+ organizations worldwide, and amassed a variety of perspectives and practical experiences. He has earned an MBA in Finance and a BS; has been recognized with several industry certifications and awards; and is an industry-renowned leader, speaker, and author.

The opinions expressed in this blog are author's and don't necessarily represent Gallop's positions, strategies or opinions.

Using Open Source Tools to Automate Load Testing in DevOps Era

load testing, performance testing, devops testing, performance testing tools, open source testing tools, gallop solutions, gallop solutions review, software testing, software testing services, software testing company, jmeter, siege, gatling, load testing framework

Performance testing has changed dramatically in the last decade and has transitioned towards performance engineering. Performance engineering represents a cultural shift in the way organizations view their essential processes, and it has the potential to transform your technology, your business, and your end-user experience.

The goal of performance testing is to help you get to know how your applications behave under heavy load conditions. There are some baseline performance parameters based on which this has to be tested like the most common one which is – Users expect a site to load in 2 seconds. As per a survey, if an e-commerce site is making $100,000 per day, 1 second delay could potentially cost them $2.5 million in lost sales every year.

So what is making performance testers leave the traditional approaches and shift towards the new approaches?

What are the open source tools being embraced by the performance testers?

We will try to answer these questions in this blog post.

Modern delivery teams have changed their approach towards the performance testing drastically and have started adopting open source tools for performance testing. With the need of optimizing the performance of your mobile, web, and API stack becoming critical and UX oriented, it has become important to have the right automation strategy for your performance tests. Having right automated performance tests can help you in every stage of the delivery pipelines.

DevOps is the new buzzword which is driving the modern delivery teams to realize quicker time to market. Though there are many commercial and opens source testing tools which can help you check the performance of your applications, open-source tools are being widely adopted in the DevOps era. Open source tools can generate load and provide the critical visibility you need to find and resolve bottlenecks and constraints so your users have the most satisfying experience possible with every release of your software. There are many open sources tools which are around for a while now, much before we heard of the buzzwords like DevOps. But the continuous delivery, continuous integration and continuous testing have helped these tools find there place and also evolve much better.

Many of the open source performance testing tools – such as Apache JMeter, Siege, and Gatling are now being widely used and have a very strong user community.

JMeter is the most popular open source performance testing tool. You can use Apache JMeter to test performance both on static and dynamic resources (files, servlets, Perl scripts, Java objects, databases and queries, FTP servers, and more). You can also use it to simulate a heavy load on a server, network, or object to test its strength or analyze overall performance under different load types. Jmeter also allows you to make a graphical analysis of performance or to test your server/script/object behavior under a heavy concurrent load.

Siege is another open source testing tool which lets you do http load-testing and benchmarking utility. It lets you measure code under duress, to see how it will stand up to load on the Internet.

Gatling is another open-source load testing framework based on Scala, Akka and Netty which is good for analyzing and measuring the performance of a variety of services, with a focus on web applications.

There are many Commercial tools also which usually allows you to easily build, execute, and analyze performance tests with good reporting, if you are willing to invest more. Though there are many other server-side performance testing tools – both commercial and open source, you need to choose it based on what works best for you.

You might want to also watch the Gallop’s presentation on ‘Visualizing Real User Experience Using Integrated Open Source Stack’ given at Selenium Conference 2016.

The opinions expressed in this blog are author's and don't necessarily represent Gallop's positions, strategies or opinions.