quarta-feira, 19 de abril de 2023

Indústria 4.0: como tornar as operações as fábricas inteligentes mais seguras

 Quem está atento as inovações, muito provavelmente já deve ter notado que, pouco a pouco, a imagem sobre como são as fábricas está mudando. Ao invés de operações e linhas de produção manuais, por exemplo, estamos cada vez mais acostumados à ideia de espaços repletos de robôs e máquinas automatizando as tarefas. Esse movimento tem nome: é a Indústria 4.0, movimento que vem revolucionando a forma como as empresas desenvolvem, produzem e distribuem seus produtos por meio de recursos de automação industrial e da integração das mais importantes tecnologias emergentes, incluindo atualmente conceitos como Internet das Coisas (IoT – de Internet of Things, em inglês), Inteligência Artificial (IA), Big Data e Computação em Nuvem, entre outros. 


O que poucos já perceberam, no entanto, é que, além de "fábricas inteligentes", a Indústria 4.0 é uma revolução também sob o ponto de vista do papel da cibersegurança dentro das companhias. A comunicação entre dispositivos, novos sistemas de automação e, principalmente, o avanço da Nuvem e da conexão 5G permitem melhores níveis de eficiência e flexibilidade nas operações – mas também podem servir como possíveis facilitadores para ataques maliciosos.  


Não por acaso, hoje, a cibersegurança é tida como uma das grandes prioridades para a sustentação das companhias de manufatura, ao lado de conceitos como conectividade e desenvolvimento de novos produtos.


Pesquisas do Gartner, por exemplo, indicam que 88% dos líderes de negócios de empresas da área industrial veem o risco relacionado à segurança cibernética como um risco comercial, e não apenas um risco tecnológico. Além disso, 51% dos entrevistados sofreram um incidente de risco de segurança cibernética nos últimos dois anos – número que vem aumentando paulatinamente, à medida que as fábricas ganham escala em seus projetos de automação e integração tecnológica. 


A cibersegurança, portanto, já é uma preocupação essencial para o andamento dessa nova revolução industrial, tanto pela importância dos dados em circulação dentro das linhas de fabricação (projetos, fornecedores, grades de programação etc.) quanto pela própria operação e disponibilidade das máquinas, sensores e equipamentos envolvidos nos processos. De acordo com o Gartner, por exemplo, até 2025, os ciberatacantes serão capazes de usar os ambientes de redes industriais (OT) para prejudicar ou colocar vidas em risco.  


Diante desse cenário, o que as lideranças devem fazer para garantir o sucesso de suas jornadas de inovação rumo à Indústria 4.0 e, ao mesmo, mitigarem as ameaças? A primeira ação é colocar a cibersegurança como um ativo que permeie os planos estratégicos. Uma equipe com especialistas em segurança cibernética precisa fazer parte da estratégia para ajudar no desenvolvimento de projetos mais assertivos e para facilitar o gerenciamento e na resposta imediata a incidentes ou na busca de ameaças.  


Vale destacar, aliás, que essa política de proteção deve ser constante – assim como é a mensuração dos resultados de um negócio -, pois nunca se sabe onde e como um ataque pode surgir. Para tornar as operações mais seguras, é recomendável implementar um abrangente plano de soluções de segurança cibernética, incluindo firewalls, sistemas de detecção de intrusão, gerenciamento de identidade e autenticação forte. Outra abordagem é usar protocolos de comunicação seguros, como o TLS, ou redes privadas virtuais (VPNs) para proteger os dados transmitidos entre os dispositivos, afinal de contas eles são ativos importantes e devem receber atenção máxima. 


Paralelamente, é necessário também treinar os colaboradores para saberem como evitar vulnerabilidades e o que fazer em caso de ciberataque. Além disso, é importante que as equipes de Tecnologia e Segurança da Informação estejam preparadas para monitorar as operações continuamente e até nos mínimos detalhes para detectar qualquer comportamento anormal ou atividade maliciosa – e para fazerem backups regulares dos dados e configurações dos sistemas para que eles possam ser restaurados rapidamente em caso de falha.  


Afinal de contas, a Indústria 4.0 tem o potencial de revolucionar a manufatura e a produção, mas é importante que todos estejam cientes dos riscos e da importância da segurança cibernética para proteger as operações e pessoas nesses novos tempos hiperconectados e cada vez mais inteligentes. Neste cenário, as lideranças de cibersegurança têm um papel vital para permitir que os times e linhas de produção tenham sempre a máxima disponibilidade e performance que necessitam. A boa notícia é que não faltam soluções e abordagens para ajudar empresas e colaboradores nessa missão. Basta apenas conferir quais marcas farão seus movimentos para incluir que a segurança cibernética apoie e potencialize a revolução que a era digital está trazendo às Indústrias. O tempo está correndo.   


Lucas Pereira, Diretor de Produtos da Blockbit.

terça-feira, 11 de abril de 2023

DNS Content Filtering: Filtro de Conteúdo em Rede de Grande Desempenho!

 

Neste webinar, discutimosir como o filtro de conteúdo em tempo real pode ajudar a melhorar a segurança da rede e manter as informações confidenciais protegidas. Você vai aprender sobre os benefícios do DNS Content Filtering para uma rede de alto desempenho, bem como as práticas recomendadas para implementar o serviço. 

Aproveite esta oportunidade única e venha conhecer mais sobre este tema tão importante! Assista agora mesmo.



 #SegurançaDaRede #PrivacidadeDeDados #FiltroDeConteúdo #AltoDesempenho #Webinar #Blockbit #ContentFiltering #NetworkSecurity


segunda-feira, 3 de abril de 2023

ChatGPT e os riscos de segurança

 Lucas Pereira é Diretor de Produtos da Blockbit


O impacto do ChatGPT em nossas vidas e no trabalho será enorme, ainda mais porque a tecnologia tem o potencial aumentar a produtividade, reduzir custos e oferecer mais serviços aos clientes. Sob o ponto de vista das vantagens, por utilizar Deep Learning (Aprendizado Profundo) para imitar como as pessoas se comunicam, o ChatGPT consegue criar diálogos inteligentes que são mais precisos do que as conversas geradas por robôs tradicionais, também conhecidos como chatbots. Nesse contexto, tem grande capacidade de gerar conteúdos e respostas instantâneas para os mais diversos segmentos.


Entretanto, pode gerar preocupações sobre os riscos de segurança cibernética, de violações de privacidade e até de manipulação de dados por conta de sua capacidade de criar conteúdo em um ritmo super acelerado, inclusive Fake News (notícias falsas). Da mesma forma, os hackers já devem estar testando possibilidades de usar essa tecnologia em seus trabalhos criminosos, criando malwares (programas maliciosos) ou outras possibilidades que ajudem na invasão de sistemas e de companhias dos mais diversos setores.


A criatividade dos alguns desses criminosos cibernéticos é enorme, chegando até a criar promoções falsas e páginas de web muito parecidas com as originais das empresas para coletar dados e senhas de clientes que, muitas vezes, nem percebem que estão em um link falso.


Os especialistas em segurança alertam: todo cuidado é pouco. Obviamente, o uso do ChatGPT pode ser muito positivo, mas vale lembrar que essa tecnologia está em fase de teste e ainda é gratuita. Com isso, as garantias de segurança são mínimas. Temos um interesse imediato que é grande em relação ao tema, pois, afinal, a Inteligência Artificial (IA) que aparecia nos filmes de ficção já está começando a ficar presente em nossas vidas.


Porém, da mesma forma que os avanços chegam, os riscos também crescem, demandando o uso de modernas ferramentas especiais para proteger os sistemas e identificar com rapidez pontos de vulnerabilidade que podem gerar eventuais invasões. Outra preocupação que se soma aos riscos de cibersegurança é o uso indevido dos dados. Embora não colete dados pessoais que parecem ser críticos no momento da criação de uma conta, o ChatGPT reúne informações sobre as perguntas que os usuários fazem e as respostas que recebem.


Esses dados podem ser usados para melhorar a precisão do modelo e aprimorar sua capacidade de fornecer respostas ainda mais precisas. No entanto, não há garantia de que essas informações serão usadas para outros fins, para atividades criminosas ou até mesmo para aplicar golpes com perfis falsos ou publicidade enganosa.


Certamente, ninguém deseja barrar os avanços ou impedir o uso de novas tecnologias. Porém, antes de utilizar qualquer novo sistema, o correto é se proteger e certificar de que o uso não colocará a empresa em risco, agora ou no futuro. Sistemas do tipo ‘Cavalo de Tróia’ podem ficar muito tempo dentro da infraestrutura de uma empresa antes que criminosos escolham o momento certo para invadirem sistemas ou que peçam dinheiro em troca da devolução de dados, após um sequestro digital.


Da mesma forma que os cibercriminosos podem tentar encontrar meios para usar a nova tecnologia, as empresas também deveriam se munir de sistemas com Inteligência Artificial para criar barreiras, monitorar aplicações diante de movimentações incomuns e proteger seus dados. A engenharia reversa pode ser aplicada para descobrir se alguém tenta quebrar as barreiras eletrônicas ou até como estão sendo desenvolvidos os códigos para criação de malwares.


A cibersegurança deve ser abordada de forma holística e ampla, com a implementação de boas práticas e medidas de segurança em várias camadas do sistema, como a criptografia dos dados, autenticação de usuário, firewalls, detecção de intrusão, monitoramento de rede e outras técnicas. Isso ajudará a garantir que as conversas sejam seguras e protegidas.


Além disso, é fundamental educar os funcionários sobre os riscos de segurança e treiná-los para seguirem as melhores práticas, como não clicar em links suspeitos, não compartilhar senhas ou informações. Combinando essas medidas de segurança com o uso de tecnologias avançadas de proteção digital, é possível usar novos sistemas como o ChatGPT sem colocar as empresas em risco. Como dizia Steve Jobs, a tecnologia move o mundo. Porém, precisamos nos proteger para aproveitar na plenitude.


 

Ameaças desconhecidas: "0-Day". Como estar seguro?

 O Diretor de Produtos Lucas Pereira, apresentou o Webinar:


Ameaças desconhecidas: "0-Day". Como estar seguro?




Neste vídeo, falo sobre as ameaças desconhecidas, ou "0-Day", e como você pode proteger-se contra elas. Mostro quais são os principais riscos dessas ameaças e como elas podem afetar sua empresa ou organização. Também forneço algumas dicas importantes para ajudá-lo a permanecer seguro online. Assistam o vídeo agora e saiba como manter-se seguro contra as ameaças cibernéticas!

Fale com um especialista da Blockbit e conheça nossas soluções para o seu negócio. Nossa equipe de especialistas pode ajudar a sua empresa. Entre em contato conosco para saber mais.


Acesse:

https://bit.ly/3Hv60xd

Visite também as nossas redes sociais e o nosso blog: 

Site: https://www.blockbit.com/pt/

Facebook: https://www.facebook.com/blockbitsec

Instagram: https://www.instagram.com/blockbitsec/

Blog: https://www.blockbit.com/pt/blog/

#protecao #cybersecurity #ataques #ameacas #desconhecidas #0day




terça-feira, 6 de dezembro de 2022

Webinar: VPN - Conexão segura de qualquer dispositivo, em qualquer lugar

Em 2020, com o home office decretado por muitas empresas, houve um aumento exponencial na demanda por soluções baseadas em VPN, visto que colaboradores passaram a contar com seus espaços de trabalho dentro de seus lares. Mesmo com a retomada das atividades, a possibilidade de manter a workstation em qualquer lugar se tornou uma realidade.


Neste webinar, você vai aprender como tirar melhor proveito da VPN e como escolher a solução ideal para o seu negócio.




sábado, 20 de fevereiro de 2021

quarta-feira, 11 de novembro de 2020

10 principais lições em Teste de Software

 

“Lessons Learned in Software Testing” é um livro. Um excelente livro!

Escrito pelos gurus do teste James Bach, Cem Kaner e Bret Pettichord, é uma coleção de 293 lições - fragmentos de sabedoria, grandes e pequenos. Escrito em 2002, ainda é muito relevante hoje (talvez com pequenas exceções, como a Lição # 266 - Aprenda Perl).

Neste artigo, apresento a vocês minhas 10 lições favoritas. Elas não são classificadas na ordem de "qual gosto mais". Em vez disso, elas seguem uma ordem cronológica aproximada de como fazemos as coisas como profissionais de QA em um novo projeto.

 

1. Conheça os programadores que lerão seus relatórios

Lição #91. O que você faz nas primeiras semanas em um novo projeto com novos stakeholders - gerentes, analistas e, o mais importante - desenvolvedores?

Você tem a oportunidade de conhecer eles ! E você faz isso sempre que pode.

O software é construído por seres humanos, e eles têm a tendência de responder às suas perguntas, "dando um retorno pra você" por e-mails rápidos e, em geral, sendo mais cooperativos se tivessem uns bate-papos informais com você sobre a vida em geral.

 



Você deixa de ser um nome ou um texto sem vida por trás de um e-mail, que sempre chega para irritar eles por exigir algo. Em vez disso, você passa a ser aquela pessoa que também gosta de montanhismo, de quem eles riram de uma piada ou com quem eles tiveram uma conversa agradável. A cooperação recebe um aumento de 1000%! (valor obtido através de uma medida cientificamente precisa). Além disso, também isso também te ajudará a escrever e-mails e relatórios corteses e bem redigidos.

Isso é uma rua de mão dupla e vocês tendem a se ver como seres humanos falíveis tentando fazer um bom trabalho, em vez de idiotas incompetentes.


2. Encontre bugs importantes rapidamente

Lição #5. OK, então você conheceu pessoas e agora é hora de começar a trabalhar. E sim, você tem que começar a correr como de costume. Eu não ouvi muitas histórias em que novos ingressantes têm bastante tempo para lentamente se tornarem mais habilitados para o trabalho.

Você leu toda a documentação e recursos internos possíveis, já se familiarizou com o sistema até certo ponto e a nova versão foi lançada e precisa ser testada. Dado relativamente pouco conhecimento (você ainda é novo) e restrições de tempo, como fazer isso?

Uma imagem vale mais que mil palavras, então aqui está a resposta em poucas palavras:


Figura 1 - Foco em recursos de alta probabilidade e alto impacto

 

Essa imagem merece uma explicação detalhada:

  • Teste coisas que mudaram antes das que ficaram iguais. Faz sentido né? Correções e atualizações significam novos riscos.
  • Primeiro teste as funções principais de alto impacto. Se uma única função central quebrada bloqueia 20 funções secundárias, qual delas tem prioridade? As funções bloqueadas ou a que impacta as outras?[PS5] 
  • Teste cenários comuns primeiro. Se o recurso A é usado por milhares todos os dias, e o recurso B por dezenas uma vez por semana, então qual deles tem prioridade?
  • Capacidade de teste antes da confiabilidade. Teste se cada função atua corretamente antes de explorar como ela pode se comportar em muitas condições diferentes.

3. Todos os testes são baseados em modelos

 

Lição #25. No início de nossas carreiras, nosso teste pode ser apenas um clique aleatório e ver que nada quebra. Eu fiz isso, todos nós tínhamos que começar de algum lugar.



 Nós rapidamente melhoramos e aprendemos sobre valores de fronteira, particionamento de equivalência e outros conceitos. Portanto, nosso teste pode ser expresso de forma eloquente nesta piada clássica sobre controle de qualidade:

Um engenheiro de controle de qualidade entra em um bar. Pede uma cerveja. Pede 0 cervejas. Encomenda 99999999 cervejas. Pede um lagarto. Pede -1 cervejas. Pede um uialkdsjfslk.

O primeiro cliente de verdade entra e pergunta onde fica o banheiro. O bar explode em chamas, matando todos.

Muitas pessoas param aqui e apenas repetem. Isso não é o bastante. O teste é muito mais complexo do que isso. Se não fosse o caso, sobre o que falam as dezenas de livros sobre teste?

Como os próprios autores sugerem:

Seus testes serão baseados principalmente nos seus modelos [...] Um modelo com falhas resulta em testes com falhas. […]. Modelagem de estudo. Você testará melhor à medida que se tornar mais hábil na arte de modelar. Livros didáticos e aulas sobre análise de requisitos e arquitetura de software podem ajudar. Uma ótima maneira de adquirir habilidade em todos os tipos de modelagem é estudar o pensamento sistêmico: Veja uma introdução ao pensamento sistêmico geral (Weinberg 2001).

Tenho certeza de que os autores não estão falando sobre “V-Model” vs. “Modelagem Ágil” de teste, mas, por exemplo, “teste baseado em estado” vs. “teste de interação”, ou a capacidade de criar diversos Diagramas UML e dividi-los em cenários. Confira este documento PDF sobre Testes da Universidade de Helsinque CS para obter uma melhor compreensão do que esta lição está falando.


4. Ao criar procedimentos de teste, evite “1287”

Lição #45. Então, você usou seus modelos e agora está criando cenários de teste com etapas (ações) e resultados esperados (resultados).

Existem muitas dicas e truques para criar um bom teste. Por exemplo, deve haver um propósito claro e bem definido, e não apenas "testar isso, e enquanto você está nisso, verifique também o outro".

Outra questão que os autores decidiram destacar é o uso de “1287”. Em outras palavras, o uso de um número aleatório ou outro valor que surgiu na cabeça do criador do teste no momento da escrita, mas não tem significado para ninguém no dia seguinte.

Este é um valor especial? Se sim - por quê? Posso usar outro número de 4 dígitos? Posso usar um número de 5 dígitos? Deixe-me passar os próximos 30 minutos descobrindo isso, caso contrário permanecerá confuso para sempre.

Figura 2 - Confused comic de http://www.poorlydrawnlines.com/comic/confused/

 

Eu frequentemente encontro esse problema também em cenários de teste e scripts de automação. Aqui estão algumas dicas práticas para evitar essa confusão:

·        Em cenários de teste, não escreva “1287”, mas sim “qualquer valor grande de até 5 dígitos, por exemplo, 1287”. Isso dá aos outros, clareza e liberdade para escolher um valor apropriado durante a próxima execução de regressão.

·        Em scripts de automação, use nomes de variáveis claros para indicar a intenção:

 

int someLargeValue = 1287; // yes!

int val = 1287; // no!

 

5. Você é o que você escreve

 

Lição # 55. Você executou seus testes e encontrou um bug! Naturalmente, você escreve um relatório de bug. Listados na seção “Defesa de bugs”, os autores argumentam que os relatórios de bugs.

 

Moldar a percepção que seus leitores têm de você. Quanto melhores forem seus relatórios, melhor será sua reputação.

 

Além disso:

 

Relatórios fracos geram trabalho extra para os programadores. Se você perder o tempo deles, eles vão querer evitar você e seu trabalho.

 

Eu não poderia concordar mais. Se o SUT não funcionar bem, alguém deve investigar o quê? Porque? Quando? e onde? Quaisquer que sejam os cantos que você cortar, os desenvolvedores terão que compensar ou rejeitar o relatório levantado, caso eles não se importarem o suficiente.

Portanto, certifique-se de colocar esforço em seus relatórios de bug! Eu descrevo o que deve ser feito na seção “Seu relatório de bug é a cara do seu diplomata” do meu outro artigo: https://medium.com/javarevisited/the-most-important-soft-skill-of-a-tester-77a9fc7347f2

 

6. Não insista para que todos os bugs sejam corrigidos. Escolha suas batalhas

 

Lição #97. Eu certamente fiz um barulho desnecessário várias vezes sobre bugs rejeitados que eu relatei. Como eu não poderia? Isso machucou o ego do meu testador júnior!

O erro de lutar por todos os problemas possíveis corrói os benefícios da primeira dica neste artigo - qualquer bom relacionamento que você construiu com os desenvolvedores nas últimas semanas ou meses pode ser desfeito em um ou dois dias.

Se você tem certeza de que é uma falha importante e foi mal interpretado - claro, avance o mais diplomaticamente possível e envolva outras partes interessadas para uma segunda (ou terceira) opinião. Como último recurso, peça um e-mail oficial ou comentário sobre o tíquete para declarar que “isso não é um problema” (e observe como a maioria das pessoas se esquivará dessa responsabilidade).

No entanto, aprenda a deixar alguns de seus bugs passarem:

·        Em primeiro lugar, não é uma questão de vida ou morte, certo? (a menos que você esteja testando software na área médica ou de aviação).

·        Em segundo lugar, você fez seu trabalho, está gravado e você tirou o seu da reta. Em algum momento, seu tempo será melhor investido se você continuar procurando por novos bugs, em vez de discutir a respeito dos antigos.

·        Por fim, vale lembrar que este definitivamente não será o seu último bug rejeitado.



 

7. Quando você perder um bug, verifique se a falha é surpreendente ou apenas o resultado natural de sua estratégia.

Lição #41. Os seus bugs relatados foram corrigidos e testados novamente, e a nova versão do software foi lançada na loucura do mundo exterior. Mas alguns usuários ainda encontrarão bugs.

Você sentirá falta dos bugs. Você pode perder um bug amanhã. Isso é inevitável. Os testadores vão parar de perder bugs quando os desenvolvedores pararem de escrevê-los.

Mas há uma pergunta importante a ser feita:

Perdemos porque estávamos seguindo uma boa estratégia de teste (com base em modelos de teste bem desenvolvidos) e simplesmente não encontramos esse problema específico?

Se a resposta for "sim" e você simplesmente não entendeu por causa do momento no mundo real e outras restrições, então continue. Mas, se houver uma grande falha na comunicação, compreensão dos requisitos ou outros fatores, aproveite isso como uma oportunidade para melhorar. Não deixe o mesmo erro acontecer novamente.

“Insanidade é fazer a mesma coisa repetidamente e esperar resultados diferentes”.

      - Albert Einstein


8. Alternar testadores entre recursos

Lição nº 191. Vamos além do contexto de apenas um único testador fazendo seu trabalho e para a dinâmica e gerenciamento de equipe.

Você normalmente trabalha em equipe. Não importa se o tamanho de sua equipe é 2 ou 20. O que importa é ocasionalmente alternar colegas de equipe entre recursos ou sistemas testados.

Digamos que sua equipe seja feita de 5 pessoas e seja responsável pelos componentes A, B e C de uma arquitetura maior. A pior coisa que você pode fazer é atribuir testadores a componentes específicos e mantê-los estáticos, digo isso, por boas razões:

 

1.     É chato, ficar cutucando a mesma coisa. Pessoas competentes desejam variedade ou vão embora.

2.     Bus fator de 1. Imagine que o componente B é testado exclusivamente por Bob. Bob é um cara legal, mas ele vai embora de repente ou adoece, e há um grande lançamento agendado para a próxima sexta-feira (péssima ideia, de qualquer maneira). Agora você tem um grande problema porque não há absolutamente nenhuma maneira de Kate, John ou Dave aumentarem seus conhecimentos rápido o suficiente para fazer um trabalho decente.

Você pode alternar ou garantir uma distribuição equilibrada de conhecimento. Por exemplo, cada componente pode ter um testador primário e um testador “backup” secundário.

 



Figura 3 - Atribuir responsabilidades primárias e secundárias equilibradas dentro da equipe

 

  • O componente (ou recurso) A é gerenciado principalmente por Bob.
  • Kate é a testadora principal para B, mas ela também trabalha em A semana sim, semana não, então ela está por dentro e poderia fazer um bom trabalho se Bob desaparecer de repente.
  • John é o testador principal de C, mas também trabalha em B...

Você entende o que eu quero dizer.

Observe que alguns sistemas são bastante complexos e requerem tempo (às vezes, cerca de 6 meses ou mais para se familiarizar). Nesses casos, é prudente não afastar as pessoas de suas tarefas quando elas estão pegando o jeito. Isso também nos leva à próxima lição.

 

9. Não espere que as pessoas lidem com vários projetos de forma eficiente

 

Lição #215. Multitarefa é um mito. Faça uma pesquisa rápida e fique impressionado com o número de artigos, pesquisas e literatura sobre o assunto.

Eu vi pessoas trabalhando em várias coisas ao mesmo tempo (bem, mudando constantemente), mas nunca vi resultados excelentes, apenas medíocres.

Acho que nunca vi alguém trabalhando em vários projetos de forma eficiente, talvez com exceção de Elon Musk, que trabalha de 90 a 120 horas por semana. Bom para ele. O resto de nós, mortais, devemos ficar longe do excesso de trabalho e da multitarefa! Organize-se ou converse com seu gerente, mas tente trabalhar na mesma coisa até se sentir razoavelmente confortável e poder assumir mais responsabilidades.

Portanto, não confunda atribuição de trabalho rotativa e equilibrada em tempo hábil (nº 8) com puxar constantemente as pessoas para frente e para trás entre tarefas e projetos (nº 9).

 

10. Muitas outras empresas são tão complicadas quanto a sua

 

Lição #252. Você já teve o suficiente! Nada está funcionando, você não é apreciado, os desenvolvedores continuam quebrando coisas e, claro, seu chefe é um idiota!

Você pode estar certo, e talvez mudar para outro trabalho ou equipe seja a melhor mudança, mas está muito longe de ser garantido. Conheço um desenvolvedor de software que, segundo suas palavras, passou de uma empresa boa para uma empresa ruim e depois para pior ainda.

Quando a grama parecer mais verde do outro lado, tente conversar com outras pessoas e obter a perspectiva delas. Talvez você descubra que seu lugar atual não é pior do que os outros. Se for esse o caso, a mudança seria um esforço perdido, então você não precisa, mas ajuste suas expectativas e termine com uma perspectiva equilibrada.

 

Conclusão

 O próprio fato de um livro chamado “Lessons Learned in Software Testing” conter 297 lições colossais significa uma coisa - testar, quando feito corretamente, é um esforço que requer grande habilidade, conhecimento e experiência.

Aprimore suas habilidade de testes. Eu recomendo totalmente que você obtenha uma cópia do livro ou verifique sua biblioteca local para ver se eles têm.

domingo, 29 de setembro de 2019

O Princípio 80/20

O Princípio 80/20 afirma que uma pequena minoria de causas conduz a uma grande maioria de resultados. Sendo assim, se soubermos quais resultados desejamos, podemos procurar um modo superprodutivo de chegar a eles. A proporção 80/20 assegura que sempre existe um meio de atingir esse objetivo. Fazer mais com menos sempre é possível, basta identificar os 20% de ouro: as pessoas, os métodos, os recursos que são extremamente criativos e produtivos. Do livro A revolução do 80/20. O poder da escolha, Richard Koch. #80/20 hashtagregradepareto

segunda-feira, 29 de abril de 2019

Regra de ouro



Filósofos têm pesquisado sobre as regras das relações humanas, toda essa pesquisa se desenvolveu apenas um único preceito, o qual não é novo, é velho como a História. Zoroastro o ensinou aos seus adoradores do fogo, na Pérsia, 3 mil anos atrás. Confúcio pregou-o na China há 24 séculos, Lao-Tsé, o fundador do Taoísmo, ensinou-o aos seus discípulos no Vale do Han. Buda pregou-o no Ganges Sagrados 500 anos antes de Cristo. Os livros sagrados do Hinduísmo ensinaram-no mil anos antes. Jesus ensinou-o entre as montanhas de pedra da Judéia 20 séculos. Jesus resumiu-o em um pensamento – provavelmente o mais importante preceito no mundo: “Faça aos outros o que quer que os outros lhe façam”. Carnegie, Dale. Como fazer amigos e influenciar pessoas, capítulo 6, pg 130, edição 52.

domingo, 10 de março de 2019

Pesquisa - Estudo Global da taxa de sucesso dos projetos de TI.

Pesquisa fantástica realizada pela Standish Group. A pesquisa divulga um Estudo Global da taxa de sucesso dos projetos de TI. Um breve resumo, em 2015 apenas 36% tiveram sucesso, ou seja, entregue no prazo, com o custo planejado e com qualidade, 45% foram concluídos com atrasos e custos estourados e 19% não foram concluídos... Este número se agravam nas grandes empresas e em projetos maiores... Onde a taxa de sucesso não passou de 6%... Segue a pesquisa, boa leitura. CHAOS Report 2015: focuses on presenting the information and data on success and failure in different forms with many charts. In this report we have 21 charts and 12 tables. A main feature of this report is presenting the six elements of success: time, budget, target, goal, value and customer satisfaction. Another key feature is the new definition of success as OnTime, OnBudget with a satisfactory outcome. We used this definition for most of the charts including size by resolution, the resolution by size, industry, type, method, world’s area, complexity, strategic alignment, and capability.

CHAOS Report 2015

quinta-feira, 9 de agosto de 2018

A GAMIFICAÇÃO APLICADA À APRENDIZAGEM

A gamificação é um conceito cada vez mais explorado, mas em que consiste concretamente
esta técnica? A gamificação busca basicamente aplicar a lógica da mecânica dos videogames ao campo educacional. Desta forma, as habilidades ou disciplinas a serem ensinadas são apresentadas como fases a serem superadas, obtendo pontos e até montando tabelas de classificação dos participantes. Algo como transformar o aprendizado em um jogo.

Como exemplo, conversamos com o pessoal da Udemy e eles nos explicaram um pouco sobre como a plataforma utiliza essa técnica. O sistema de ensino da Udemy se baseia na formação de indivíduos produtivos, brincando com as regras do mundo real, no entanto, não é assim com todo o tipo de conteúdo. Por exemplo, aprender História da Arte não tem uma aplicação imediata, já que não vamos construir um templo grego ou uma coluna dórica, de modo que não obtemos uma gratificação imediata, que às vezes gera um desapego. No entanto, as regras internas de um jogo não têm em mente a atividade produtiva; os pontos são obtidos e o progresso é feito seguindo uma lógica mecânica que acaba quando o jogo termina. Ou seja, é uma situação em que é possível cometer erros para buscar melhorar depois, sem o medo ou a tensão de saber que a falha pode ter graves consequências.

A lógica interna de um jogo também é construída por meio de uma narrativa, que organiza as informações de maneira simples e lógica. Uma história fictícia é criada com problemas objetivos que incorporam, ao mesmo tempo, os elementos fundamentais da habilidade ou disciplina que se pretende ensinar. O que está em foco é a familiaridade dos alunos com conceitos, habilidades ou histórias para, assim, facilitar a introdução ao assunto mais profundo da disciplina e fazê-lo com um interesse maior.
Além disso, a apresentação desse tipo de atividade no processo de aprendizagem não é apenas uma forma de provocar interesse de maneira momentânea, mas também incentiva a continuidade do aprendizado. Quando os dados são recebidos de maneira impessoal e não são imediatamente aplicáveis, os alunos veem isso como um procedimento que deve ser superado para ser aprovado nas provas ou exames, nada mais.

A gamificação, naturalmente, é um método que não substitui o ensino tradicional ou a figura
de instrutores e professores, mas é um complemento que está fornecendo ótimos resultados. É, sem dúvida, uma boa maneira de abordar um conhecimento que queremos aprender sem ter que entrar totalmente em conteúdos que ainda não compreendemos e cuja dificuldade pode gerar apatia.

Essa técnica, além de já ter sido aplicada em escolas com bons resultados e ter revolucionado o aprendizado digital, também chamado de Educação a Distância (EaD) ou e-learning, deve chegar até a formação nas empresas. De fato, de acordo com um estudo da Udemy sobre treinamento no ambiente profissional, 3 dos 10 chefes de departamentos de treinamento planejam incorporar essa técnica em programas de treinamento para seus trabalhadores ao longo dos próximos anos. Você estará preparado?

Se você ainda não se sente preparado para essa técnica, na Udemy você encontra muitos
cursos relevantes que podem contribuir para seu aprendizado. Como exemplo:


quarta-feira, 21 de fevereiro de 2018

"Considero minha habilidade em despertar o entusiasmo entre os homens".

"A maior força que possuo, e o meio mais eficiente para desenvolver o que de melhor há em homem é a apreciação e o encorajamento". "Não há meio mais capaz de matar as ambições de um homem do que a crítica dos seus superiores. " Nunca critico quem der que seja. Acredito no incentivo que se dá a um homem pra trabalhar. Assim, sempre estou ansioso para elogiar, mas repugna-me descobrir faltas. Se gosto de alguma coisa, sou sincero na minha aprovação e pródigo no meu elogio." De Charles Schwab, em depoimento no livro Como fazer amigos e influenciar pessoas, Dale Carnegie.

A ação emana daquilo que fundamentalmente desejamos...

0 Prof. Harry Overstreet, no seu grande livro Influencing Human Behavior,  diz:


"A ação emana daquilo que fundamentalmente desejamos... e o melhor conselho que se pode dar às pessoas que têm necessidade de convencer alguém, seja nos negócios, no lar, na escola ou na política, é despertar na outra pessoa um desejo ardente. Aquele que puder conseguir isto terá todo o mundo a seu lado. Aquele que não o conseguir trilhará um caminho solitário".

terça-feira, 14 de novembro de 2017

Testes de software evitam prejuízos a longo prazo





Mais de 65% dos custos de criação de software são relativos à sua manutenção / Mikael Hvidtfeldt Christensen/Creative Commons
Mais de 65% dos custos de criação de software são relativos à sua manutenção / Mikael Hvidtfeldt Christensen/Creative Commons

A transformação digital habilita novas soluções que facilitam a nossa vida diariamente.
Porém, as novas tecnologias criam um usuário peculiar, que está integrado ao processo de qualidade dos produtos. Nesse contexto, as empresas precisam estar preparadas diante de novas e constantes demandas.
Inovar é estratégico. Contudo, a inovação não é apenas uma ideia na cabeça. Planejamento e avaliação são fundamentais para garantir a eficiência no processo de desenvolvimento e a qualidade dos produtos.
Qualidade é um conceito subjetivo, na medida em que cada usuário possui uma percepção ligada à sua experiência particular.
Para o mercado de tecnologia, seguindo a norma brasileira para documentação de testes de software, consideramos qualidade o grau em que um sistema, componente ou processo atende a requisitos do projeto e às necessidades dos usuários.

Custos de manutenção


No processo de criação de um novo produto ou serviço de tecnologia, podemos estabelecer parâmetros para orientar o projeto, trazendo mais eficiência para seu desenvolvimento e otimizando os investimentos.
Mais de 65% dos custos de criação de software são relativos à sua manutenção – seja para corrigir defeitos, adaptar ou integrar a novas plataformas ou para aplicar melhorias sugeridas por usuários.
Em casos de aplicações críticas – testes nas áreas da medicina e aviação, por exemplo – esses custos podem ultrapassar 90% do orçamento.
Portanto, definindo os critérios de qualidade, podemos planejar quais passos corroboram para alcançar os resultados estimados, sem tomar desvios ineficientes ou ter a necessidade de retroceder para corrigir a concepção de um projeto.
De modo geral, os desenvolvedores brasileiros estão mais concentrados em entregar as funcionalidades do software do que em garantir qualidade no processo de desenvolvimento.
E esse caminho envolve adotar uma metodologia de testes em todas as etapas: definição de escopo, arquitetura e prototipagem, desenvolvimento, homologação, documentação e go-to-market.
O fato de focar apenas em funcionalidades, sem atenção às outras etapas, pode representar um aumento exponencial de custos e atrasos no fluxo de trabalho.
O cuidado com o teste processual colabora para a entrega de um projeto mais alinhado com seu escopo e com a expectativa do mercado.
No entanto, conforme uma pesquisa do Ministério de Ciência, Tecnologia, Inovações e Comunicações, estima-se que menos de 9% das empresas de software conhecem a norma IEEE 829-2008 – que é a principal regulamentação em vigência para documentação de teste de software.

Planejamento cuidadoso

É importante que todo o processo de desenvolvimento de um novo produto ou serviço envolva um planejamento cuidadoso, por dois motivos:
  • por um lado, para otimizar o uso de tempo e investimentos;
  • por outro para garantir uma experiência positiva do usuário.
E testes são ferramentas essenciais para evitar que o que você chama de inovação seja um tiro no escuro.
A longo prazo, sua aplicação evitará que a empresa tenha problemas de qualidade dos produtos, prejuízos financeiros e possíveis danos à sua reputação.















Lucas Pereira é líder de Quality Assurance da Blockbit
 • Posted under: Opinião

quinta-feira, 2 de março de 2017

Aplicações para automatização de testes

Pessoal depois de um longo hiato, estou de volta.

Venho compartilhar uma pesquisa que fiz sobre ferramentas de automação de testes em interfaces gráficas Web ou em QT (https://www.qt.io/developers/).

Seguem a lista de ferramentas e seus valores:


  • http://www.sikulix.com/quickstart.html (openSource)



  • http://www.froglogic.com/squish/evaluate.php (1 licença - Node-locked EUR % 2,400)



  • http://www.inflectra.com/Rapise/Highlights/Features-Checklist.aspx (5 licenças $3,999.99 primeiro ano e renovações $899/ano)



  • http://www.ranorex.com/supported-technologies.html (1 licença - FLOATING USER LICENSE $4,500)  ou (1 licenças - Node-locked $2,590)



  • https://smartbear.com/product/testcomplete/pricing/ (1 licença - FLOATING USER LICENSE $4,500)  ou (1 licença - Node-locked $2,000) 



  • http://sahipro.com/pricing-licensing/ (1 licença - FLOATING USER LICENSE $995)  ou (1 licençaNode-locked $695) ??



  • http://www.testplant.com/eggplant/testing-tools/eggplant-developer/ (1 licençaNode-locked $7,999)

 São ferramentas fantásticas que tive a oportunidade de testar, sei que falta muitas outras, mas fica para um próximo post.

Até logo.

sexta-feira, 4 de dezembro de 2015

Gartner lista dez tendências tecnológicas de alto impacto para 2016


O Gartner ligou sua bola de cristal e liberou previsões tecnológicas para 2016. A consultoria listou dez tendências que possuem potencial de influenciar significativamente as organizações em um horizonte de doze meses.
Fatores que denotam o impacto desses conceitos incluem a elevada possibilidade de interferência nos negócios, nos usuários finais ou na TI; a necessidade de grande investimento; ou o risco de ser tarde demais para adotá-lo. Na visão de analistas, essas tecnologias afetam os planos, os programas e as iniciativas das empresas em longo prazo.
As três primeiras apostas do Gartner abordam a fusão dos mundos físico e virtual e o surgimento da malha digital. “Enquanto as organizações se concentram nos mercados digitais, o negócio algorítmico está surgindo – e logo essas relações e interligações definirão o futuro dos negócios”, afirma.
De acordo com a consultoria, no mundo algorítmico, muitas coisas acontecem em um plano em que as pessoas não estão diretamente envolvidas. Isso é possibilitado por máquinas inteligentes, abordadas pelas três tendências seguintes.
As quatro últimas tendências apresentadas se referem à nova realidade de TI, com a arquitetura e a plataforma de tendências necessárias para apoiar os negócios digitais e algorítmico.
1. Malha de dispositivos – O termo ‘malha de dispositivos’ refere-se a um extenso conjunto de pontos utilizados para acessar aplicativos e informações ou para interagir com pessoas, redes sociais, governos e empresas. Ele inclui dispositivos móveis, wearables (tecnologias para vestir), aparelhos eletrônicos de consumo e domésticos, dispositivos automotivos e ambientais – tais como os sensores da Internet das Coisas (IoT).
“O foco está no usuário móvel, que é cercado por uma malha de dispositivos que se estende muito além dos meios tradicionais”, diz David Cearley, vice-presidente do Gartner. Segundo ele, embora os dispositivos estejam cada vez mais ligados a sistemas back-end por meio de diversas redes, eles muitas vezes operam isoladamente. Como a malha evolui, esperamos que surjam modelos de conexão para expandir e aprimorar a interação cooperativa entre os dispositivos.
2. Experiência ambiente-usuário – A malha de dispositivos estabelece a base para uma nova experiência de usuário contínua e de ambiente. Locais imersivos, que fornecem realidade virtual e aumentada, possuem potencial significativo, mas são apenas um aspecto da experiência. A vivência ambiente-usuário preserva a continuidade por meio das fronteiras da malha de dispositivos, tempo e espaço. A experiência flui regularmente em um conjunto de dispositivos de deslocamento e canais de interação, misturando ambiente físico, virtual e eletrônico, ao passo que o usuário se move de um lugar para outro.
“Projetar aplicativos móveis continua sendo um importante foco estratégico para a empresa. No entanto, o projeto objetiva fornecer uma experiência que flui e explora diferentes dispositivos, incluindo sensores da Internet das Coisas e objetos comuns, como automóveis, ou mesmo fábricas. Projetar essas experiências avançadas será um grande diferencial para fabricantes independentes de software (ISVs) e empresas similares até 2018”, afirma Cearley.
3. Impressão 3D – Os investimentos em impressão 3D (três dimensões) já possibilitaram o uso de uma ampla gama de materiais, incluindo ligas avançadas de níquel, fibra de carbono, vidro, tinta condutora, eletrônicos, materiais farmacêuticos e biológicos. Essas inovações estão impulsionando a demanda do usuário, e as aplicações práticas estão se expandindo para mais setores, incluindo o aeroespacial, médico, automotivo, de energia e militar. A crescente oferta de materiais conduzirá a uma taxa de crescimento anual de 64,1% em carregamentos de impressoras 3D empresariais até 2019. Esses avanços exigirão uma reformulação nos processos de linha de montagem e na cadeia de suprimentos.
“Ao longo dos próximos 20 anos, a impressão 3D terá uma expansão constante dos materiais que podem ser impressos, além do aprimoramento da velocidade com que os itens podem ser copiados e do surgimento de novos modelos para imprimir e montar peças”, estima o analista.
4. Informação de tudo – Tudo na malha digital produz, utiliza e transmite informação. Esses dados vão além da informação textual, de áudio e de vídeo, incluindo informações sensoriais e contextuais. O termo ‘informação de tudo’ aborda essa afluência com estratégias e tecnologias para conectar dados de todas essas diferentes fontes.
A informação sempre existiu em toda parte, mas muitas vezes isolada, incompleta, indisponível ou ininteligível. Os avanços nas ferramentas semânticas, como bancos de dados de gráfico e outras técnicas de análise de classificação e de informação emergente, trarão significado para o dilúvio, muitas vezes caótico, de informações.
5. Aprendizagem avançada de máquina – No aprendizado avançado de máquina, as Redes Neurais Profundas (DNN) movem-se além da computação clássica e da gestão da informação, criando sistemas que podem aprender a perceber o mundo de forma autônoma.
As múltiplas fontes de dados e a complexidade da informação tornam inviáveis e não rentáveis a classificação e a análise manual. As DNNs automatizam essas tarefas e possibilitam a abordagem de desafios-chave relacionados a tendências.
As DNNs são uma forma avançada de aprendizado de máquina particularmente aplicável a conjuntos de dados grandes e complexos, e fazem equipamentos inteligentes aparentarem ser ‘inteligentes’. Elas permitem que sistemas de hardware ou baseados em software aprendam por si mesmos todos os recursos em seu ambiente, desde os menores detalhes até grandes classes abstratas de conteúdo de varredura.
Essa área está evoluindo rapidamente, e as organizações devem avaliar como aplicar essas tecnologias para obter vantagem competitiva.
6. Agentes e equipamentos autônomos – O aprendizado de máquina dá origem a um espectro de implementações de equipamentos inteligentes – incluindo robôs, veículos, Assistentes Pessoais Virtuais (APV) e assessores inteligentes –, que atuam de forma autônoma ou, pelo menos, semi autônoma. Embora os avanços em máquinas inteligentes físicas, como robôs, chamem a atenção, elas, quando baseadas em software apresentam um retorno mais rápido e impacto mais amplo.
Assistentes Pessoais Virtuais como o Google Now, o Cortana da Microsoft e o Siri da Apple estão se tornando mais inteligentes e são precursores de agentes autônomos. O surgimento da noção de assistência alimenta a experiência usuário-ambiente, no qual um agente autônomo se torna a interface com o usuário principal. Em vez de interagir com menus, formulários e botões em um smartphone, o indivíduo fala com um aplicativo, que é realmente um agente inteligente.
“Ao longo dos próximos cinco anos evoluiremos para um mundo pós-aplicativos, com agentes inteligentes fornecendo ações e interfaces dinâmicas e contextuais. Os líderes de TI devem explorar como usar equipamentos e agentes autônomos para aumentar a atividade, permitindo que as pessoas façam apenas os trabalhos que humanos podem fazer. No entanto, eles devem reconhecer que agentes e equipamentos inteligentes são um fenômeno de longo prazo, que evoluirá continuamente e expandirá seus usos nos próximos 20 anos”, projeta o vice-presidente do Gartner.
7. Arquitetura de segurança adaptativa – As complexidades dos negócios digitais e a economia algorítmica, combinadas com uma ‘indústria hacker’ emergente, aumentam significativamente a superfície de ameaça às organizações. Basear-se no perímetro de defesa fundamentado em regras é pouco, especialmente pelo fato de que as empresas exploram muitos serviços baseados em nuvem e Interfaces de Programação de Aplicação (API) abertas para clientes e parceiros de integração com seus sistemas.
Os líderes de TI devem concentrar-se em detectar e responder às ameaças, assim como no bloqueio mais tradicional e em outras medidas para prevenir ataques. A autoproteção de aplicativos e a análise de comportamento de usuários e entidades ajudarão a cumprir a arquitetura de segurança adaptativa.
8. Arquitetura de sistema avançado – A malha digital e as máquinas inteligentes requerem demandas intensas de arquitetura de computação para torná-las viáveis para as organizações. Isso aciona um impulso em arquitetura neuro mórfica ultra eficiente e de alta potência. Alimentada por matrizes de Portas Programáveis em Campo (FPGA) como tecnologia subjacente, ela possibilita ganhos significativos, como a execução em velocidades de mais de um teraflop com alta eficiência energética.
“Sistemas construídos em Unidades de Processamento Gráfico (GPU) e FPGAs funcionarão como cérebros humanos, particularmente adequados para serem aplicados à aprendizagem profunda e a outros algoritmos de correspondência de padrão usados pelas máquinas inteligentes. A arquitetura baseada em FPGA possibilitará uma maior distribuição de algoritmos em formatos menores, usando consideravelmente menos energia elétrica na malha de dispositivo e permitindo que as capacidades avançadas de aprendizado da máquina sejam proliferadas nos mais ínfimos pontos finais da Internet das Coisas, tais como residências, carros, relógios de pulso e até mesmo seres humanos”, afirma Cearley.
9. Aplicativo de rede e arquitetura de serviço – Designs monolíticos de aplicação linear, como arquitetura de três camadas, estão dando lugar a uma abordagem integrativa de acoplamento mais informal: aplicativos e serviços de arquitetura. Ativada por serviços de aplicativos definidos por software, essa nova abordagem permite desempenho, flexibilidade e agilidade como as da web.
A arquitetura de micros serviços é um padrão emergente para a criação de aplicações distribuídas, que suportam o fornecimento ágil e a implantação escalável tanto no local quanto na cloud. Contêineres estão emergindo como uma tecnologia essencial para permitir o desenvolvimento e a arquitetura de micros serviços ágeis. Levar elementos móveis e de IoT para a arquitetura de aplicativos cria um modelo abrangente para lidar com a escalabilidade em nuvem de back-end e a experiência de malha de dispositivos de front-end.
Equipes de aplicativos devem criar arquiteturas modernas para fornecer utilitários baseados em nuvem que sejam ágeis, flexíveis e dinâmicos, com experiências de usuário também ágeis, flexíveis e dinâmicas abrangendo a malha digital.
10. Plataformas de Internet das Coisas (IoT) – As plataformas de IoT complementam o aplicativo de rede e a arquitetura de serviço. Gerenciamento, segurança, integração e outras tecnologias e padrões da plataforma são um conjunto básico de competências para elementos de criação, gestão e fixação na Internet das Coisas.
Essas plataformas constituem o trabalho que a equipe de TI faz nos bastidores, de um ponto de vista arquitetônico e tecnológico, para tornar a IoT uma realidade. A Internet das Coisas é parte da malha digital, que inclui a experiência do usuário, e o ambiente do mundo emergente e dinâmico das plataformas é o que a torna possível.
“Qualquer empresa que adote a IoT precisará desenvolver uma estratégia de plataforma, porém abordagens incompletas de provedores concorrentes dificultarão sua implementação até 2018”, projeta Cearley.
Fonte: Computerworld