$hide=/p/valores.html

Correção automática de bugs com código transplantado de outros programas

MIT inventa corretor de erros de software que conserta programa sem necessitar acessar o código-fonte. [Jose-Luis Olivares/MIT]

MIT inventa corretor de erros de software que conserta programa sem necessitar acessar o código-fonte.

[Jose-Luis Olivares/MIT]

O nome dele é CodePhage. Um sistema do Laboratório de Ciências da Computação e Inteligência Artificial (CSAIL) do MIT que corrige softwares com falhas automaticamente. Apresentado na conferência Implementação e Design de Linguagem de Programação da Association for Computing Machinery, o novo sistema basicamente copia código sem defeitos de outros programas, e então corrige a falha, sem precisar de acesso ao código fonte.

No exemplo, o programa gráfico Display 6.5.2 (receptor) apresentou um
problema na verificação do tamanho de uma imagem o que gerou uma falha.
O CP localizou o código de uma verificação sem o problema no programa
Viewnoir 1.4 (doador) adaptando-o no código fonte do programa receptor.
Funciona como nos transplantes de órgãos: O paciente injuriado é um software com bugs (chamado pelos pesquisadores de "receptor") e o órgão transplantado é um pedaço de código de outra aplicação (chamada de "doador"), ainda que tenha sido desenvolvido em uma linguagem completamente diferente.

Temos toneladas de código-fonte disponíveis em repositórios de código-fonte aberto, milhões de projetos, e muitos desses projetos implementam especificações similares. Mesmo que possa não ser a principal funcionalidade do programa, eles frequentemente têm subcomponentes que compartilham funcionalidades através de um grande número de projetos.
Stelios Sidiroglou-Douskos. Pesquisador do Computer Science and Artificial Intelligence Laboratory (CSAIL) do MIT e líder do desenvolvimento do CodePhage.

De acordo com os pesquisadores, verificações de segurança podem representar 80% dos códigos dos software atuais, ou até mais. A esperança é que futuras versões do CodePhage possa reduzir drasticamente o tempo empregado pelos programadores para essas verificações.

A técnica de pedir o código de outro programa que tem funcionalidade semelhante, e ser capaz de ter um programa que, essencialmente, está quebrado e corrigi-lo dessa maneira, é um resultado muito legal. Para ser honesto, fiquei surpreso que ele tenha funcionado afinal.
Emery Berger, professor de ciência da computação na Universidade de Massachusetts em Amherst

Testado em sete programas de código aberto comuns nos quais o DIODE (um programa para encontrar falhas, desenvolvido pela mesma equipe) encontrou erros, o CodePhage importou reparos de dois a quatro programas doadores para cada bug. Em todos os casos, o sistema consertou a vulnerabilidade levando de dois a 10 minutos por reparo.

A visão a longo prazo é que você nunca mais precisará escrever um código que outra pessoa já escreveu. O sistema encontra esse pedaço de código e automaticamente junta com os outros que você precisa para fazer seu programa funcionar.
Martin Rinard. Professor de engenharia e ciência da computação do MIT e membro do time de pesquisadores do CodePhage.

Os detalhes de como esse sistema transforma linguagem de máquina em uma linguagem simbólica, acha o ponto de inserção do código "benigno" e garante que tudo ocorreu bem é bastante técnico e pode ser visto nesses slides de apresentação da solução (PDF em inglês).

O programa de doador não foi escrito pelas mesmas pessoas. Eles têm diferentes padrões de codificação; eles nomeam variáveis ​​de forma diferente; eles usam todos os tipos de variáveis ​​diferentes; as variáveis ​​podiam ser locais; ou poderiam estar mais acima na pilha. E o CodePhage é capaz de identificar essas conexões e dizer: 'Essas variáveis ​​se correlacionam com essas variáveis.' Falando em termos de doação de órgãos, transforma esse código para torná-lo um enxerto perfeito, como se tivesse sido escrito assim no começo. O fato de funcionar tão bem como ele funciona é surpreendente - E legal.
Emery Berger

Esse pode ser o início da automação de tarefas de engenharia de software que são normalmente caras, lentas e manuais: Busca e eliminação de defeitos em softwares; e transferência de códigos entre aplicações.



Esse novo processo de programação pode transformar a forma como a sociedade irá produzir software trazendo mais confiabilidade, segurança e funcionalidade. Talvez atraindo mais pessoas para a programação e mudando profundamente essa indústria.

Fonte: MIT News
[Visto no Brasil Acadêmico]

Comentários

BLOGGER

$hide=/p/valores.html

[/fa fa-cloud/ Nuvem de categorias]$hide=mobile

Nome

#existepesquisanobrasil A divulgar Abelha Acessibilidade acessório Acidente Acidentes Acústica Adágios Adestramento Administração adulto Aerodinâmica Aeronáutica África Agência Brasil Agência Fiocruz Agência Porvir Agência Senado Agência USP Agricultura Agropecuária AIDS Alcoolismo Alemanha Alerta Algoritmo Alimento Alzheimer Amazon Amazônia América Latina Análise Combinatória Anatomia Android Animação Animais de Estimação Animal Antropologia Apicultura App Apple Apresentação aquário Argentina Arqueologia arquitetura Arte Astrobiologia Astrofísica Astronomia Ativismo Áudio Audio FX Áustria Autismo Auto-ajuda Automobilismo Automóvel aventura Aviação Aviônica Bahia Balonismo Banco de Dados Beber e Dirigir biblioteconomia Bicicleta Biografia Biologia Biologia Marinha bioquímica Biotecnologia Bitcoin Blog Blogger Boato Bomba borderô de desconto Botânica BRASA BRASA Leads Brasil Brasília BRIC Browser Bugs CAD Calor Câmera lenta Campanha cardiologia Carnaval carreira Cartografia Casemods Caso Isabella Nardoni Caso Snowden Ceará Celebridades celular Células-Tronco Cérebro Charge China Cibercultura Ciclovia Cidadania Ciência Cinema Clip Cliparts Cloud computing Coaching Comédia competência Complemento de dois Comportamento Computação Computação em grade Computação forense Computação Gráfica Computação Móvel Comunicação e Marketing Concurso Concurso Cultural de Natal Concursos Público Concursos Públicos Conectômica Conferência Congresso em Foco Conspiração Consumidor Consumismo contabilidade Contos Copa do Mundo Cordel Coreia do Norte Coreia do Sul Corpo Coruja cosmética Cosmologia Crash Course Criança Criatividade Crime Crime Digital crise crise econômica crônica crônicas Cronologia CSS Cuba Culinária Cultura Curiosidades custos fixo custos variáveis Dança DAO Darwin Davos Debate Decoração demência Demografia Denúncia Dermatologia Desastre Natural Descoberta desconto duplicatas Desenho instrucional Desenvolvimento de jogos Design Design Instrucional Destaque Dia das Mães Dia do professor diabetes Dicas Didática Dieta diplomacia Direito Direito Eleitoral Direito Internacional Direito Tributário Direitos Humanos Disney Distrito Federal Documentário Doutorado download Drogas Drone Dubai e-Book e-governo EBC Ecologia Economia Editoração Eletrônica Educação Educação a Distância Educação Corporativa educação física Educação sexual Efeitos Sonoros Egiptologia Eleições Eleições 2014 Eleições 2018 Eletricidade eletrônica Embrapa empreendedorismo enciclopédia endocrinologia Enem Energia Energia Alternativa Energia Nuclear Engenharia Engenharia Agrícola Engenharia Civil Engenharia de materiais Engenharia de Software Engenharia Genética Engenharia Mecânica Enretenimento Ensino a Distância Ensino Superior Entomologia Entretenimento Entrevista Entrevista. Epidemiologia Epistemologia Equador Escândalo Escritório Espaço Espanha Espanhol Espeleologia Espetáculo Espionagem Esporte Estação Estágio Estatísticas estrutura de dados Ética EUA Europa Evento Evolução Exercícios físicos Exobiologia experiência fábulas Facebook Farmacologia Favo Feminismo Férias Ferramentas FIFA Filantropia Filmes Filosofia Finlândia Firefox Física Física Quântica Fisiologia Fisioterapia Flagrante Flamengo Folclore Fome Fonética Fonoaudiologia Fotografia Fotos em 360 graus França Francês frases Fraude Freeware Futebol Futurologia gadget Gafe Gastroenterologia Gastronomia Geek Genética Geofísica Geografia Geologia Geometria geopolítica Gerenciamento do Tempo Geriatria Gestão de Competências Gestão de Configuração Gestão de Pessoas Gestão de Projetos Gestão do conhecimento Ginecologia Glass Google Governo GPS Gradiente gramática Gravidez Grécia Grécia Antiga Guerra Guerra Civil Guinness H2 Haiti hardware História HIV Hololens homenagem Horologia HPV HTML Humor Humor Negro IBGE IBM ICIJ Idioma IHC ilo ilusão ilusionismo Imagem 3D Imagens Imagine Cup Império Romano Imprensa Impressora 3D Imunologia Incêndio Inclusão digital Índia Índios Infectologia Infográfico Informática Inglaterra Inglês Inovação Inspiração Inteligência Artificial intercâmbio Interface Interfaces Hápticas Internacional Internacionalização da Amazônia Internet Internet das Coisas Inundação Invenção Inventos iPad IPEA iphone Irã Iraque Israel Japão Java Java. jogos Jogos educativos Jogos Olímpicos Jornalismo Justiça Kinect Le Monde Diplomatique Brasil Le Monde Diplomatique Brasil Letras Lexicografia Liderança Life Hacking Linguística Literatura Livro Lógica Logística Loterias Lua Maçonaria Malásia Malvinas Malware Mapa Mário Sérgio Conti Marte Mastologia Matemática Matemática Financeira maternidade Mecânica Mecânica dos Fluidos Mecatrônica Medicina Medicina Esportiva Medicina Veterinária Meio Ambiente Mel melanoma Memória memorização Mente Mercado de Trabalho mercosul Mestrado meteorologia Metodologia Científica México Microbiologia Microsoft Mídia Social Militar Mineralogia Mistério MIT Mitologia Mobilidade Mobilidade Urbana MonaVie Montanhismo Moodle Mossad Motivação Movimento Maker MSF Mudança Climática Mulher Multimídia museu Música MVC Nanotecnologia Nasa Natação Natal Natureza Negócios Netflix Neurociência Neurologia Nicolelis Nordeste Noruega notícias Novidades Novo Enem Números Nutrição Obama Obesidade Observatório da Imprensa Obstetrícia Oceanografia odontologia Offshore Leaks oftalmologia Olimpíadas oncologia ONU Opinião Óptica Oracle Oriente Médio Orkut Ornitologia ortografia Ortopedia Ótica Otorrinolaringologia Oxfam Pacifismo Paginadores paleontologia Paquistão Pará Paraguai parkinson Passeio virtual Patinação Pedagogia Pediatria Pensamentos performance Periférico Pesca Pesquisa Petição Petrobrás Petróleo Photoshop Pirataria planilha de custo Playstation 3 Plebiscito Pneumologia Podcast Poesia Poítica Politica Política Portugal português Pós-graduação prazo médio Pré-sal Prêmio Nobel primatologia Primeira Guerra Mundial privacidade produtividade professor Hamilton Alves Programa Gratuito Programação Projeção Mapeada Projeto Truco Promoção Propaganda Psicanálise Psicologia Psicologia Animal Psiquiatria Pública publicidade Publieditorial Quadrinhos Quads Qualidade Qualidade de Vida química realidade aumentada realidade diminuída Realidade Misturada Realidade Virtual Reconhecimento de imagem Reconhecimento de voz Recorde Redação redes Referência Referendo Reforma Política Reino Unido Relacionamento Relações Internacionais Religião Responsabilidade Social Retrospectiva Review Rio 2016 Rio de Janeiro Rio Grande do Norte Rio Grande do Sul robótica Roda Viva Roma roteiro RSA Rússia Samsung Sanitarismo Santa Catarina São Paulo Saúde Savant Segunda Guerra Mundial Segurança Segurança da Informação Seleção Natural Séries serviço Serviço Online Sexologia sexualidade Show SIGGRAPH Simulação Singularity University Síria Sismologia Sistema operacional Sistemas de Numeração Sites de Busca Sociedade Sociologia Software Software Livre Sol Sono Sony SOPA Star Wars Suécia Sugestão de presentes Sun supercomputadores Sustentabilidade Tabagismo Taiwan Talento precoce taxa de juros efetiva taxa de juros nominal Taxas Equivalentes Taxidermia Teatro Técnicas de Estudo Tecnologia Tecnologia da Informação TED TED-Ed TedMed TEDx TEDx Rio+20 TEDxAmazônia TEDxAsaSul Telefonia Televisão Temas Tempo Tendências Teologia teoria das supercordas Terremoto Terrorismo Testes Tipologia Tomada de Decisão tradução Trânsito transporte tributo Trigonometria Tubarão Tunísia Turismo Tutorial Twitter Uber UFC UFG ufologia UFRJ Unicamp UNIFESP universidade Universidade Corporativa Universidade de Cambridge Universidade de Michigan Urbanismo Urologia USP Utilidade Pública Utilitário Vale Vaticano Veículo Autônomo Ventriloquismo Verão vestibular Vestimenta Vida Digital Vida Moderna Vida Selvagem Videogame Vídeos Vídeos 360 Violência Vírus Visão Computacional Vôlei Vulcanologia Watergate Política WCIT 2016 WCIT 2017 Web 2.0 Web Application Web Semântica Web Seminar webdesign Webinar widget WikiLeaks Wikipedia Windows Xadrez YouTube Zika Zoologia
false
ltr
item
Brasil Acadêmico: Correção automática de bugs com código transplantado de outros programas
Correção automática de bugs com código transplantado de outros programas
http://1.bp.blogspot.com/-D1A1asCQAWg/VZ-k_YjrUOI/AAAAAAAAe1c/3IUXcYZHHmY/s400/MIT-CodeRepair-1.jpg
http://1.bp.blogspot.com/-D1A1asCQAWg/VZ-k_YjrUOI/AAAAAAAAe1c/3IUXcYZHHmY/s72-c/MIT-CodeRepair-1.jpg
Brasil Acadêmico
http://blog.brasilacademico.com/2015/07/correcao-automatica-de-bugs-com-codigo.html
http://blog.brasilacademico.com/
http://blog.brasilacademico.com/
http://blog.brasilacademico.com/2015/07/correcao-automatica-de-bugs-com-codigo.html
true
3049085869098582068
UTF-8
Nenhuma artigo encontrado. VER TODOS Leia mais Responder Cancelar resposta Apagar Por Início PÁGINAS POSTS Ver Todos Indicado para você CATEGORIA ARQUIVO BUSCA TODOS ARTIGOS Nenhum artigo corresponde ao critério procurado Ir para Início Domingo Segunda Terça Quarta Quinta Sexta Sábado Dom Seg Ter Qua Qui Sex Sáb Janeiro Fevereiro Março Abril Maio Junho Julho Agosto Setembro Outubro Novembro Dezembro Jan Fev Mar Abr Maio Jun Jul Ago Set Out Nov Dez agora 1 minuto atrás $$1$$ minutes ago 1 hora atrás $$1$$ hours ago Ontem $$1$$ days ago $$1$$ weeks ago mais de 5 semanas atrás Seguidores Seguir Este conteúdo é PREMIUM Por favor, compartilhe para liberar Copiar todo o código Selecionar todo o código Todos os códigos foram copiados para o clipboard Can not copy the codes / texts, please press [CTRL]+[C] (or CMD+C with Mac) to copy