Especificação Formal de uma Ferramenta de Trabalho Colaborativo através da Composição de Objetos Náutilus - Carneiro, Cirney; Reis, Rodrigo Quites; Menezes, Paulo Blauth (Anais do Simpósio Brasileiro de Engenharia de Software (SBES), 1999)
A construção de programas concorrentes e distribuídos que sejam corretos e confiáveis consiste em uma importante meta atual da Engenharia de Software. A linguagem baseada em objetos concorrentes Náutilus é um formalismo voltado a construção de programas desta natureza. Para ilustrar as facilidades de Náutilus, esta linguagem foi usada para especificar um editor colaborativo síncrono (CoEdit) anteriormente implementado em Java. Com a utilização de Náutilus, a especificação se mostrou mais clara, pois foi possível expressar a sincronização de processos concorrentes facilmente através das construções existentes na linguagem. Além disso, uma importante extensão ao programa CoEdit original foi realizada a partir da utilização dos mecanismos de abstração da linguagem, reutilizando os componentes especificados anteriormente e adicionando nova funcionalidade à especificação.