“Vestível Controlador” pode ter muitas outras falhas
por Jade Scobri | Curitiba, Brasil
Fontes próximas à equipe de desenvolvimento do iWear sugerem que há outros problemas no código do dispositivo que podem estar relacionados à falha que causou a paralisação motora da piloto Alberta Dumont, da Capivaras Airlines, em agosto passado. A aeronave seguiu sua rota até seu combustível acabar e caiu com 113 pessoas a bordo.
A SBC Horizontes conseguiu mais trechos de código do dispositivo que revelam diversos problemas. Em um deles, a variável que deveria registrar a informação relacionada ao nível de estresse do usuário recebe um valor inicial muito acima dos valores considerados normais. A informação sobre o nível de estresse é então obtida por uma função que mede o nível de estresse do usuário em tempo real. Porém, de acordo com a fonte, o código implementado reconhece apenas o gênero Masculino e Feminino, que são duas das três opções configuráveis na interface do dispositivo.
Segundo nossa fonte, “a interface de configuração do iWear permite que o usuário escolha entre três opções para indicar o gênero: masculino (1), feminino (2) ou outro / prefiro não informar (3). Como a configuração do dispositivo ocorre por comandos de voz, a opção 3 é utilizada também quando o assistente não reconhece a entrada como 1 ou 2.”
Var |
O problema, segundo a nossa fonte, é que a interface de configuração oferece uma terceira opção que não é utilizada na hora de atualizar o valor da variável que guarda a informação sobre o nível de estresse do usuário. “Isso faz com que a variável não seja atualizada e permaneça com o valor que recebeu ao ser inicializada. Se esse valor for muito diferente do valor real, então temos um problema sério!”
Mostramos o código à Professora Carmem Hara, da UFPR, que confirmou os problemas indicados pela nossa fonte.
“O código certamente possui problemas sérios que impactarão o seu funcionamento. Há valores arbitrários utilizados para inicializar ou atualizar variáveis. Por exemplo, não é possível saber porque a variável iStress é inicializada com 999. E quando essa variável é atualizada com o valor obtido pela função fMedirStress(), não é possível saber porque o valor é reduzido em 7 quando o usuário é do gênero masculino mas aumentado em 10 quando a usuária é do gênero feminino. Valores, aliás, que estão diferentes do indicado nos comentários do código.”
A Professora adiciona: “O problema fica ainda mais sério porque não há atualização da variável quando o gênero do usuário estiver configurado como outro ou quando o usuário preferir não informar. Nesse caso, a variável não será atualizada com o valor que representa o nível de estresse real do usuário, e permanecerá com o valor de 999 utilizado em sua inicialização”.
Carmem chamou a atenção para a baixa qualidade da documentação do código, e criticou a especificação baseada em post-its para uma funcionalidade de caráter crítico. Para a professora, esse trecho de código já é preocupante e mostra a necessidade de uma auditoria em todo o código do dispositivo.
Perguntamos à nossa fonte sobre os valores utilizados como padrão. Segundo ela, a Vina Systems possui diversas bases de dados rotuladas por especialistas e utilizadas por algoritmos de inteligência artificial. “Para identificar o nível de estresse do usuário, os dados obtidos pelo dispositivo servem de entrada para um modelo treinado com uma base de dados da Vina. São utilizadas bases de treinamento e de testes para garantir a precisão dos resultados.”
Sobre os valores específicos para cada gênero, porém, nossa fonte não soube dizer a origem ou justificativa: “Pode ser um valor de calibração, ou pode ter sido algo gerado automaticamente por um chat como o gpt… mas não sei… é preciso perguntar ao Malcom, que foi quem implementou esse código. Talvez ele tenha esquecido de ajustar algo, ou até tenha sido um pedido dos responsáveis pelo projeto.”
A reportagem procurou a gerente de projetos responsável pelo iWear na Vina Systems para saber como os valores utilizados como referência no código foram obtidos, e se ferramentas de IA foram utilizadas para gerar partes do projeto, porém não obtivemos retorno até o final desta reportagem. A SBC Horizontes tentou contatar novamente o programador, porém ainda não obteve resposta.
Jade Scobri, Jornalista Científica
Especialista em Tecnologias Computacionais
O Caso do Vestível Controlador © 2022 by Roberto Pereira, Fabiano Silva and Leticia Mara Peres is licensed under CC BY-NC-SA 4.0.