• No results found

Conclusion and Future Trends

This chapter describes a method for the verification and validation of software systems using coloured Petri nets (CPN) and VRML. The method is defined over three separated roles: the CPN Developer, responsible for CPN issues; the VRML Developer, respon-sible for VRML issues; and the Final User, responrespon-sible for specifying and validating the system.

According to the proposed method, the system is modeled using CPN and VRML based on its requirements. Next, the CPN and VRML events are correlated in order to allow the CPN model simulation to control the VRML model simulation. For that, we propose a software tool that is used to correlate CPN and VRML events.

We describe the method as a set of phases for modeling and verification. The application of each phase is illustrated using a flexible manufacturing-system example. This makes it easier to understand the implementation of our method. As a real case study, we described the validation and verification of an embedded software system using the proposed method and platform.

The main future trend in the context of software verification and validation related to our work is to provide mechanisms for reducing the gap between validation and verification techniques. In this chapter, we propose a method and a tool that reduce such a gap, promoting the integration between VRML and CPN developers, still obtaining software verification and friendly software validation.

However, for some domains, the integration can be improved. For example, a VRML-component library for a specific domain may be created. Thus, when verifying and

validating software for such domain, the integration tool could generate the VRML model based on the name of the component events. This automatic approach would reduce the effort on mapping CPN events to VRML ones.

On the other hand, verification tools could be improved in order to provide friendly mechanisms for visualizing what is being verified. It will be very important to the large-scale use of verification techniques in the context of industrial software engineering.

In this future, we plan to apply our method for validating and verifying software in other domains, focusing on complex interaction-centric ones (e.g., multiagent systems, as in Weiss, 2000, and workflow management systems, as in van der Aalst & van Hee, 2002).

The validation of these systems through VRML may be primordial.

References

Abbott, D. (2003). Linux for embedded and real-time applications. Oxford, UK: Newnes.

Almeida, H., Silva, L., Perkusich, A., & Costa, E. (2005). A formal approach for the modelling and verification of multiagent plans based on model checking and Petri nets. In R. Choren, A. Garcia, C. Lucena, & A. Romanovsky (Eds.), Software engineering for multi-agent systems III: Research issues and practical applica-tions (Vol. 3390, pp. 162-179). Berlin, Germany: Springer-Verlag.

Bardohl, R., Ermel, C., & Ribeiro, L. (2000). Towards visual specification and animation of Petri net based models. In Proceedings of the Workshop on Graph Transforma-tion Systems (GRATRA ’00) (pp. 22-31). Berlin, Germany.

Casher, O., Leach, C., Page, C. S., & Rzepa, H. S. (1998). Virtual reality modelling language (VRML) in chemistry. Chemistry in Britain, 34(9), 26.

Christensen, S., & Jepsen, L. O. (1991, June 17-19). Modelling and simulation of a network management system using hierarchical coloured Petri nets. In E. Moseklide (Ed.), Modelling and Simulation, 1991: Proceedings of the 1991 European Simulation Multiconference, the Panum Institute Copenhagen, Denmark. San Diego, CA:

Society for Computer Simulation International.

Christensen, S., & Mortensen, K. H. (1996). Design/CPN ASK-CTL manual. Denmark:

University of Aarhus.

Clarke, E. M., Emerson, E. A., & Sistla, A. P. (1986). Automatic verification of finite-state concurrent systems using temporal logic specifications. ACM Transactions on Programming Languages and Systems, 2(8), 244-263.

Ehrig, H., & Mahr, B. (1985). Fundamentals of algebraic specification 1: Equations and initial semantics. Berlin, Germany: Springer-Verlag.

Ferreira, G. V., Loureiro, E. C., Nogueira, W. A., Gomes, A. A., Almeida, H. O., & Frery, A. (2004). Uma abordagem baseada em componentes para a construção de edifícios virtuais (in Portuguese). In Proceedings of VII Symposium on Virtual Reality-SVR 2004 (Vol. 7, pp. 279-290). Porto Alegre, Brazil: Sociedade Brasileira de Computação.

Fuhrman, C., Djlive, F., & Palza, E. (2003). Software verification and validation within the (rational) unified process. In Proceedings of the Software Engineering Workshop, 2003, 28th Annual NASA Goddard (pp. 216 - 220). Washington, DC: IEEE Computer Society.

Gallasch, G., & Kristensen, L. M. (2001). Comms/CPN: A communication infrastructure for external communication with Design/CPN. In K. Jensen (Ed.), 3rd Workshop and Tutorial on Practical Use of Coloured Petri Nets and the CPN Tools (CPN’01) (pp. 75-90). Denmark: DAIMI PB-554, Aarhus University.

Goodman, D., & Morrison, M. (2004). JavaScript bible. Hoboken, NJ: John Wiley &

Sons.

International Organization for Standardization. (1998). ISO/IEC 14772-1:1998: Informa-tion technology — Computer graphics and image processing — The Virtual Reality Modeling Language — Part 1: Functional specification and UTF-8 encoding. Geneva, Switzerland: International Organization for Standardization.

Jensen, K. (1992). Coloured Petri nets. Basic concepts, analysis methods and practical use (Vol. 1). Berlin, Germany: Springer-Verlag.

Kindler, E., & Páles, C. (2004, June 21-25). 3D-visualization of Petri net models: Concept and realization. In J. Cortadella & W. Reisig (Eds.), Applications and Theory of Petri Nets 2004: Proceedings of the 25th International Conference, ICATPN 2004, Bologna, Italy (Vol. 3099, pp. 464-473). Berlin, Germany: Springer-Verlag.

Krishnamurthy, K., Shewchuk, J., & McLean, C. (1998, May 18-20). Hybrid manufacturing system modeling environment using VRML. In J. J. Mills & F. Kimura (Eds.), Information infrastructure systems for manufacturing II, IFIP TC5 WG5.3/5.7 Third International Working Conference on the Design of Information Infrastruc-ture Systems for Manufacturing (DIISM ’98), Fort Worth, TX (Vol. 144, pp. 163-174). London: Kluwer.

Padberg, J., Ehrig, H., & Ribeiro, L. (1995). Algebraic high-level net transformation systems. Mathematical Structures in Computer Science, 5(2), 217-256.

Perkusich, A., Almeida, H., & Araújo, D. (2003). A software framework for real-time embedded automation and control systems. In Proceedings of Emerging Tech-nologies and Factory Automation, 2003 (ETFA ’03) IEEE Conference (Vol. 2, pp.

181-184). Washington, DC: IEEE Computer Society.

Reddy, M., Iverson, L., & Leclerc, Y. G. (1999). Enabling geographic support in virtual reality modeling with GeoVRML. Cartography and Geographic Information Science, 26(3), 180-182.

Rohrmeier, M. (2000). Web based robot simulation using VRML. In J. A. Joines, R. R.

Barton, K. Kang, & P. A. Fishwick (Eds.), Proceedings of the 32nd Winter Simula-tion Conference (pp. 1525-1528). San Diego, CA: Society for Computer SimulaSimula-tion International.

Selman, D. (2002). Java 3D programming. Greenwich, UK: Manning Publications.

Silva, L., & Perkusich, A. (2003). Uso de realidade virtual para validação de modelos de sistemas flexíveis de manufatura (in Portuguese). Anais do VI Simpósio Brasileiro de Automação Inteligente. São Paulo, Brazil.

Silva, L., & Perkusich, A. (2005). A model-based approach to formal specification and verification of embedded systems using coloured Petri nets. In C. Atkinson, C. Bunse, H. G. Gross, & C. Peper (Eds.), Component-based software development for embedded systems (vol. 3778, pp. 35-58). Berlin, Germany: Springer-Verlag.

van der Aalst, W., & van Hee, K. (2002). Workflow management: Models, methods, and systems: Cooperative information systems. Cambridge, MA: MIT Press.

Wang, J. (1998). Timed Petri nets: Theory and applications. London: Kluwer Academic.

Wang, Q., & Saunders, B. (2005). Web-based 3D visualization in a digital library of mathematical functions. In Proceedings of the Tenth International Conference on 3D Web Technology (pp. 151-157). New York: ACM Press.

Weber, M., & Kindler, E. (2003). The Petri net kernel. In H. Ehrig, W. Reisig, G. Rozenberg,

& H. Weber (Eds.), Petri net technology for communication-based systems:

Advances in Petri nets (Vol. 2472, pp. 109-124). Berlin, Germany: Springer-Verlag.

Weiss, G. (Ed.). (2000). Multiagent systems — A modern approach to distributed artificial intelligence. Cambridge, MA: MIT Press.

Zaslavsky, A., Yeo, L., Lai, S., & Mitelman, B. (1995). Petri nets analysis of transaction and submitter management protocols in mobile distributed computing environ-ment. In Proceedings of the 4th International Conference on Computer Commu-nications and Networks (ICCCN ’95) (pp. 292-299). Washington, DC: IEEE Computer Society.

Endnotes

1 Design/CPN can be downloaded at http://www.daimi.au.dk/designCPN/

2 VRML resources such as editors and browsers are available at http://

www.vrmlsite.com/

3 The official site of Java 3D is available at https://java3d.dev.java.net

4 The official site of X3D is available at http://www.web3d.org

Chapter III

Integrating Usability,