Qualidade de Software na era da Internet das Coisas e a privacidade dos dados

* Ryan Yackel

A era da Internet das Coisas (IoT), na qual dispositivos conectados se tornaram onipresentes, chegou. De 2017 até hoje são mais de 8,4 bilhões de dispositivos conectados (isto é, mais do que a população mundial), e o Gartner estima que esse número aumente para 20,4 bilhões até 2020. À medida que esses dispositivos conectados chegam às nossas vidas, estamos começando a ver um impacto significativo, tanto para o lado bom quanto para o ruim.
Recentemente eu mesmo tive meu próprio encontro com a IoT quando decidi comprar algumas webcams para minha casa, e a experiência foi reveladora, para dizer o mínimo. Durante a minhas pesquisavas nas páginas web sobre as opções disponíveis, mesmos comentários semelhantes continuavam sobre muitas câmaras apareciam repetidamente sobre diversos aspectos. As pessoas apontaram alguns problemas de privacidade com as câmeras, com várias delas dizendo que as devolveram porque não queriam concordar com os “termos e condições”, o que dava ao fabricante acesso a todos os dados coletados pelas câmeras.
Agora, se esses termos e condições não foram preocupantes o suficiente, certamente estes comentários não existiriam. Uma pesquisa recente revelou que meio milhão de dispositivos inteligentes em Barcelona (incluindo webcams e monitores de bebês) estavam vulneráveis a ataques cibernéticos e várias famílias relataram casos de invasão de dados a suas babas eletrônicas.
Dando a devida prioridade à segurança dos dispositivos IoT
As histórias de webcams com graves falhas de segurança devem ser debatidas seriamente. Muitos de nós conectamos nossas casas aos escritórios e, embora essa conexão certamente facilite a vida para nós, há muita complexidade nos bastidores sobre a qual nem sequer conhecemos. Os dispositivos de IoT envolvem muitas coisas do ponto de vista da arquitetura tecnológica ao se conectar ao Wi-Fi, armazenando dados na nuvem, realizando cobranças via cartões de crédito etc.
No entanto, à medida que essas conexões continuam a se aprofundar, os riscos de segurança também aumentam, pois quanto mais conexões cada dispositivo possui, mais pontos de entrada fornecem aos criminosos para acessar os dados do usuário.
Teste de Software na Era da IoT: preparando-se para um jogo desafiados
Como o número de dispositivos IoT continua a crescer, as possíveis vulnerabilidades de segurança também aumentam. Como resultado, a forma como testamos software conectado precisa mudar. E essa mudança precisa acontecer mais cedo possível. Especificamente, aqui estão três maneiras importantes de como você pode abordar os testes na era da IoT:

1) Introduzir testes de segurança contínuos
Uma das razões pelas quais a IoT se tornou tão vulnerável a ataques de segurança é porque, com tantos pontos de conexão e tantas coisas acontecendo dentro dessas conexões, é muito fácil perder de vista o que representa um risco à segurança e o que não provoca. Mas, à medida que nos aprofundamos na era da IoT, isso precisa mudar e os testes de segurança contínuos serão cada vez mais fundamentais para que ocorra uma mudança de cultura.
Atualmente, a maioria das vezes, as equipes de teste realizam testes de segurança e de carga no final do processo de desenvolvimento e depois de concluírem todos os testes funcionais e de unidade. Mas, quando você faz testes de segurança no final, isso se torna uma etapa extra, adicional, em vez de ser algo que é crítico em todo o processo. Para obter o melhor modelo de segurança as equipes de teste precisam realizar estes testes em todo o processo de desenvolvimento e para que eles acontecem mais cedo, logo desde o início, e com mais frequência.
No entanto, este tipo de teste de segurança contínuo só se tornará ainda mais importante à medida que a taxa de alteração do software de IoT aumentar a velocidade. Uma pesquisa recente dos CEOs da Fortune 500 descobriu que o ritmo acelerado da mudança de tecnologia e da segurança cibernética são as duas principais preocupações entre os CEOs e que essas duas preocupações se conectam, definitivamente, com outras na era da IoT. Isso porque, conforme as equipes de desenvolvimento começam a se mover incrivelmente rápido e o software se torna mais interconectado, é muito mais difícil ver todos os protocolos estabelecidos e identificar pontos fracos. Como resultado, os testes de segurança contínuos serão cada vez mais importantes para ajudar a segurança a acompanhar o ritmo das mudanças no software.

2) Descobrir o que você não precisa testar
Com todos os vários sistemas e conexões que a IoT apresenta, há muito no que você precisa prestar atenção quando se trata de testes. Como resultado, quando você combina a necessidade de testes de segurança mais contínuos com o imperativo de aumentar a velocidade de entrega, muitas vezes é tão importante descobrir o que você não precisa testar quanto descobrir o que você precisa testar.
Determinar o que você não pode testar para cada lançamento, sem sacrificar a segurança, ajudará a minimizar as preocupações em relação à manutenção da cobertura de teste adequada e a aliviar a pressão em torno de prazos apertados. Ao pensar em quais áreas do software você não precisa testar em cada release, procure protocolos que já passaram por testes de segurança e que permanecerão os mesmos para os próximos lançamentos. Se você puder identificar áreas como essa, você terá muito mais facilidade em priorizar seu plano de testes para atingir as metas agressivas de segurança e de cronograma.

3) Melhore suas estratégias de automação de teste com virtualização de serviços
Um dos fatores mais importantes para o sucesso da automação de testes é ter um ambiente o mais próximo possível do ambiente de produção. Atingir essa meta é difícil na era da IoT porque não é comum que todos os sistemas interconectados nos quais os aplicativos IoT dependem estejam prontamente disponíveis para testes. Ao contrário do uma página da Web simples requer, como alguns protocolos instalados e funcionando, a interconexão da IoT significa que muito precisa estar funcionando corretamente para se obter um ambiente de teste adequado.
Como resultado desse desafio, a virtualização de serviços, ou um ambiente virtual de produção, é uma obrigação. Embora o ambiente virtual possa não ser exatamente o mesmo que o ambiente real no qual o software existirá, provavelmente será a coisa mais próxima que sua equipe poderá obter antes de levar o software para a produção.
Ter uma forte estratégia de virtualização de serviços é fundamental para a era IoT, pois sem ela você enfrentará gargalos regulares esperando por todos os protocolos necessários para testar uma mudança ou, se não esperar, você não terá confiança na segurança de cada lançamento.
IoT exige que as práticas de Quality Assurance evoluam
Apesar da IoT apresentar uma perspectiva empolgante, ela traz consigo uma enormidade de riscos de segurança. Para mitigar esses riscos e ajudar os usuários a aproveitar os benefícios da IoT, as equipes de teste de software devem desenvolver suas práticas de Quality Assurance (QA) para incluir testes de segurança contínuos, priorização aprimorada de testes e virtualização de serviços confiável.

* Gerente de produto da QASymphony, fornecedora de ferramentas de testes de software.

error: Conteúdo protegido !!