Uma proposta de arquitetura de sistemas de controle utilizando padrões de projeto e CSP-OZ. - Date, Yoshiaki (2006)
O desenvolvimento de software de sistemas de controle pode ser caracterizado como um trabalho de alta complexidade. A sua alta complexidade se deve principalmente às características de não determinismo, assincronismo e concorrência entre os seus processos. Este trabalho propõe uma nova arquitetura de sistemas de controle baseada em padrões de projeto e na utilização da combinação de linguagens de especificações formais CSP e Object-Z (CSP-OZ). A linguagem Object-Z é utilizada para se especificar características estáticas e métodos de classes através da utilização de predicados, enquanto que CSP é uma álgebra de processos utilizada para especificar a dinâmica de processos concorrentes. A proposta desta arquitetura visa a construção de uma arquitetura robusta, correta, de fácil modificação, reutilizável e que possa servir de base para implementação de projetos futuros. A arquitetura do software é dividida em duas partes. Na primeira parte, alguns padrões de projeto comumente utilizados em sistemas de controle são especificados utilizando-se a linguagem de especificação formal CSP-OZ. As especificações formais são convertidas em programas JAVA através da utilização da biblioteca JCSP (uma biblioteca construída para traduzir facilmente especificações CSP). Na segunda parte, as aplicações utilizando CSP-OZ e JCSP são construídas baseadas em uma biblioteca de padrões de projeto que foram previamente analisadas. Um estudo de caso é utilizado para se testar e validar a arquitetura proposta