Aspectos de Herança em uma Ferramenta de Modelagem de Sistemas Baseada em Redes de Petri
Resumo
Métodos e técnicas matemáticas para o desenvolvimento rigoroso de sistemas são essenciais para o estabelecimento de uma disciplina de Engenharia de Software. A especificação formal de sistemas permite antecipar a detecção de erros e características indesejáveis, aumentando seu grau de confiabilidade. No caso de sistemas distribuídos, e por conseguinte concorrentes, o problema se agrava pela falta de arcabouços notacionais que capturem com simplicidade as propriedades inerentes desses sistemas. A teoria das redes de Petri é um dos mais bem sucedidos formalismos para lidar com concorrência. Entretanto, a falta de mecanismos para o desenvolvimento composicional impede sua utilização em sistemas complexos. Tais fatores são o principal motivo para a busca de unificação entre o mundo de redes de Petri e a Orientação a Objetos. Neste artigo discutimos especificamente questões pertinentes à integração de um dos mais importantes aspectos da Orientação a Objetos às redes de Petri: a herança.
Referências
G. Agha, S. Frolund, W. Kim, R. Panwar, A. Patterson, and D. Sturman. Abstraction and modularity mechanisms for concurrent computing. In G. Agha, Peter W., and A. Yonezawa, editors, Research Directions in Concurrent Object-Oriented Programming. MIT Press, Cambridge, Massachussetts, 1993.
P. America and F. van der Linden. A parallel object-oriented language with inheritance and subtyping. In Norman Meyrowitz, editor, OOPSLA/ECOOP'90, volume 25 of Sigplan Notices, pages 161-168, Ottawa, Canada, October 1990. ACM Press.
K. Baclawski. The notion of inheritance. Commun. ACM, 37(9), September 1994.
W. Cook and J. Palsberg. Denotational semantics of inheritance ans its correctnes. In OOPSLA'89, pages 433-443, New Orleans, USA, October 1989. ACM Press.
K. Jensen. Coloured petri nets. In W. Brauer, W. Reisig, and G. Rozenberg, editors, Lecture Notes in Computer Science, Advances in Petri Nets: Petri Nets, Central Models and Their Properties, volume 254, pages 248-299. Springer-Verlag, 1987.
K. Jensen. Coloured Petri Nets: Basic Concepts, Analysis, Methods and Practical Use. EACTS - Monographs on Theoretical Computer Science. Springer-Verlag, 1992.
C. Lakos. Pragmatic inheritance issues for object petri nets. Sem maiores indicações.
C. Lakos. From coloured petri nets to object petri nets. In Proceedings of the 16th International Conference on Applications and Theory of Petri Nets, Turin, Italy, June 1995.
J. Palsberg and M. I. Schwartzbach. Three discussions on object-oriented typing. ACM SIGPLAN OOPS, 3(2):31-38, 1992.
J. Palsberg and M. I. Schwartzbach. Static typing for object-oriented programming. Science of Computer Programming, 23(1):19-53, 1994,
L.Pomello, G. Rozenberg, and C. Simone. A survey of equivalence notions for net based systems. In G. Rozenberg, editor, Advances in Petri Nets 1992, volume 609 of Lecture Notes in Computer Science, pages 410-472. Springer-Verlag, 1992,
A. Taivalsaari. On the notion of inheritance. ACM Computing Surveys, 28(3), September 1996.
University of Aarhus, Aarhus, Denmark. Design CPN - Overview of CPN ML Syntax, version 3.0, 1996.
P. Wegner. The object-oriented classification paradigm. In B. Shriver and P. Wegner, editors, Research Directions in Object-Oriented Programming, pages 479-560. MIT Press, 1987.
P. Wegner and S. B. Zdonik. Inheritance as an incremental modification mechanism or what like is and isn't like. In ECOOP'88: European Conference on Object-oriented Programming, volume 276 of Lecture Notes in Computer Science, pages 55-77, Oslo, Norway, August 1988. Springer-Verlag.