Doutor em Engenharia de Software, com pós-doutorado na Universidade de Oxford, realizou também um pós-doutorado na Universidade de York, na Inglaterra. É professor titular da Universidade Federal de Pernambuco (UFPE). Sua principal área de interesse é Engenharia de Software, com ênfase em Métodos Formais. Tem contribuído para a semântica, refinamento e transformação de especificações, modelos e programas concorrentes e orientados a objetos; técnicas composicionais de verificação de modelos (model checking); integração entre métodos formais e semiformais (como UML e SysML); modelos de componentes e na geração automática de testes a partir de modelos.