This Article 
 Bibliographic References 
 Add to: 
Development of Veda, a Prototyping Tool for Distributed Algorithms
March 1988 (vol. 14 no. 3)
pp. 339-352

The development of a simulator, called Veda, is described. Veda is a software tool to help designers in protocol modeling and validation. It is oriented towards the rapid prototyping of distributed algorithms. Algorithms are described using an ISO (International Organisation for Standardization) formal description technique, called Estelle. The development of Veda and its internal structure is presented, emphasizing the use of Prolog as a software engineering tool. Typical uses of Veda are discussed.

[1] G. Barberye, T. Joubert, and M. Martin,Manuel d'utilisation du Prolog-CNET, CNET, France, Tech. Rep. NT/PAA/CLC/LSC/ 1058, Sept. 1983.
[2] G. v. Bochmann, "Finite state description of communication protocols,"Comput. Networks, vol. 2, pp. 361-372, Oct. 1978.
[3] CCITT Red Book, recommendations Z. 100-Z. 104.
[4] A. Colmerauer, "Les grammaires de metamorphoses," GIA, Univ. Marseille-Luminy, France, Tech. Rep., Nov. 1975.
[5] A. Colmerauer, "Prolog in 10 figures,"Commun. CACM, vol. 28, no. 12, pp. 1296-1310, Dec. 1985.
[6] J. P. Courtiat, P. Dembinski, R. Groz, and C. Jard, "Estelle, un langage ISO pour les algorithmes distribues et protocoles,"TSI, vol. 6, no. 2, pp. 89-102, Mar. 1987.
[7] R. Dssouli and G. v. Bochmann, "Conformance testing with multiple observers," inVI IFIP WG6.1 Workshop, G. v. Bochmann and B. Sarikaya, Eds., Gray Rocks, Montreal, June 1986.
[8] G. Estrin, R. S. Fenchel, R. R. Razouk, and M. K. Vernon, "SARA (System ARchitects Apprentice): Modeling, analysis, and simulation support for design of concurrent systems,"IEEE Trans. Software Eng., vol. SE-12, no. 2, pp. 293-311, Feb. 1986.
[9] R. Groz, C. Jard, and C. Lassudrie, "Attacking a complex distributed algorithm from different sides: An experience with complementary validation tools,"Comput. Networks, vol. 10, no. 5, pp. 245- 257, Dec. 1985.
[10] R. Groz, "Unrestricted verification of protocol properties on a simulation using an observer approach," inProc. VI IFIP WG6.1 Workshop, G. v. Bochmann and B. Sarikaya, Eds., Gray Rocks, Montreal, June 1986.
[11] C. A. R. Hoare, "Communicating sequential processes,"Commun. ACM, vol. 21, pp. 666-677, 1978.
[12] "Estelle: A formal description technique based on an extended state transition model," Rep. ISO/TC97/SC21/WG16-1 DP9074, Sept. 1986.
[13] "Lotos: A formal description technique," Rep. ISO/TC97/ SC21/WG16-1 DP8807, Sept. 1986.
[14] C. Jard, "Protocoles et services: Test des specifications," Ph.D. dissertation, Univ. Rennes, France, May 1984.
[15] C. Jard, J. F. Monin, and R. Groz, "Experience in implementing X250 in Véda," inProc. VIFIP WG6.1 Workshop, Moissac, France, June 1985.
[16] C. Jard, R. Groz, and J. F. Monin, "Véda: A software simulator for the validation of protocol specifications," inComputer Network Usage: Recent Experiences, L. Csaba, K. Tamay, and T. Szentivanyi, Eds., Amsterdam, The Netherlands: North-Holland, 1985.
[17] L. S. Levy, "A metaprogramming method and its economic justification,"IEEE Trans. Software Eng., vol. SE-12, no. 2, pp. 272-277, Feb. 1986.
[18] R. J. Linn, "The features and facilities of Estelle: A formal description technique based upon an extended finite state machine model," inProtocol, Specification, Testing, and Verification V, M. Diaz, Ed. Amsterdam, The Netherlands: North-Holland, 1986, pp. 271-296.
[19] D. May, "OCCAM,"SIGPLAN Notices, vol. 18, no. 4, pp. 69-79, Apr. 1983.
[20] J. F. Monin, "Ecriture d'un compilateur reel en Prolog,"Journees Sur la Programmation en Logique, Plestin, France, Apr. 1984.
[21] D. L. Parnas and P. C. Clements, "A rational design process: How and why to fake it,"IEEE Trans. Software Eng., vol. SE-12, pp. 251-257, Feb. 1986.

Index Terms:
Veda; prototyping tool; distributed algorithms; simulator; software tool; ISO; International Organisation for Standardization; Estelle; Prolog; distributed processing; protocols; software tools
C. Jard, J.F. Monin, R. Groz, "Development of Veda, a Prototyping Tool for Distributed Algorithms," IEEE Transactions on Software Engineering, vol. 14, no. 3, pp. 339-352, March 1988, doi:10.1109/32.4654
Usage of this product signifies your acceptance of the Terms of Use.