Location via proxy:   [ UP ]  
[Report a bug]   [Manage cookies]                
skip to main content
10.5555/2395970.2396027guideproceedingsArticle/Chapter ViewAbstractPublication PagesConference Proceedingsacm-pubtype
Article

On formal MOM modeling

Published: 29 August 2007 Publication History

Abstract

Distributed applications are usually concurrent and nondeterministic. For this reason, formal verification on their design specifications is an essential technique for us to gain more confidence in the correctness of the behavioral aspects of our design before putting them into coding stage. Message-Oriented Middleware (MOM) is widely used to simplify the task of interprocess communications in distributed applications. To model the MOM-based applications for verification purpose, the services provided by MOM must also be integrated into the models. However, MOM modeling is non-trivial. While providing highlevel program interfaces which shield programmers from the complexity of the underlying operating systems and networks, MOM may also conceals under such interfaces the concurrency and nondeterminism present in the underlying networks. This increases the possibility of misinterpretting the behavior of the applications, which in turn causes design errors. An over-abstracted MOM model based on Application Programming Interface may bury such design errors while an over-detailed model may consume too much resource and render the verification infeasible. As a guideline for MOM modeling, we present several formal models of various behavioral aspects of MOM in terms of Promela, the specification language used in SPIN model checker. Based on our empirical study, we also discuss the impact of incorporating these formal models in different settings into the MOM-based application models, in terms of increased state space for model checking.

References

[1]
Linthicum, D.S.: Next Generation Application Integration: From Simple Information to Web Services, 1st edn. Addison-Wesley, Reading (2003)
[2]
Cleaveland, R., Sims, S.: The NCSU concurrency workbench. In: Alur, R., Henzinger, T.A. (eds.) CAV 1996. LNCS, vol. 1102, pp. 394-397. Springer, Heidelberg (1996)
[3]
Holzmann, G.: The model checker SPIN. IEEE Transactions on Software Engineering 23 (1997)
[4]
McMillan, K.L.: Symbolic Model Checking. Kluwer Academic Publishers, Dordrecht (1993)
[5]
Holzmann, G.: The Design and Validation of Computer Protocols. Prentice-Hall, Englewood Cliffs (1991)
[6]
Latella, D., Majzik, I., Massink, M.: Automatic Verification of a Behavioural Subset of UML Statechart Diagrams Using the SPIN Model-checker. Formal Aspect of Computing 11, 637-664 (1999)
[7]
Chen, J., Cui, H.: DOS middleware instrumentation for ensuring reproducibility of testing procedures. IEEE Transactions on Instrumentation and Measurement 56, 56-62 (2007)
[8]
Chen, J.: Building test constraints for testing distributed systems with middleware. In: van der Hoek, A., Coen-Porisini, A. (eds.) SEM 2002. LNCS, vol. 2596, pp. 216- 232. Springer, Heidelberg (2003)
[9]
Duval, G.: Specification and verification of an object request broker. In: Proc. of the 20th International Conference on Software Engineering, pp. 43-52 (1998)
[10]
Kamel, M., Leue, S.: Validation of remote object invocation and object migration in CORBA GIOP using Promela/Spin. In: Proceedings of SPIN Workshop'98, Paris, France (1998)
[11]
Baresi, L., Ghezzi, C., Mottola, L.: Towards fine-grained automated verification of publish-subscribe architectures. In: Najm, E., Pradat-Peyre, J.F., Donzeau-Gouge, V.V. (eds.) FORTE 2006. LNCS, vol. 4229, pp. 131-135. Springer, Heidelberg (2006)
[12]
Chen, J., Cui, H.: Translation from adapted UML to promela for CORBA-based applications. In: Graf, S., Mounier, L. (eds.) Model Checking Software. LNCS, vol. 2989, pp. 234-251. Springer, Heidelberg (2004)
[13]
Deng, X., Dwyer, M., Hatcliff, J., Jung, G., Robby, Singh, G.: Model-checking middleware-based event-driven real-time embedded software. In: de Boer, F.S., Bonsangue, M.M., Graf, S., de Roever, W.-P. (eds.) FMCO 2002. LNCS, vol. 2852, pp. 154-181. Springer, Heidelberg (2003)
[14]
Garlan, D., Khersonsky, S., Kim, J.: Model checking publish-subscribe systems. In: Ball, T., Rajamani, S.K. (eds.) Model Checking Software. LNCS, vol. 2648, pp. 166-180. Springer, Heidelberg (2003)
[15]
Hatcliff, J., Deng, X., Dwyer, M., Jung, G., Ranganath, V.P.: An integrated development, analysis, and verification environment for component-based systems. In: Proc. of the 25th International Conference on Software Engineering, pp. 160-173. IEEE Computer Society Press, Los Alamitos (2003)
[16]
Kaveh, N., Emmerich, W.: Deadlock detection in distributed object systems. In: Proc. of the Joint 8th European Software Engineering Conference (ESEC) and 9th ACM SIGSOFT Symposium on the Foundations of Software Engineering (FSE-9), pp. 44-51. ACM Press, New York (2001)

Recommendations

Comments

Information & Contributors

Information

Published In

cover image Guide Proceedings
ISPA'07: Proceedings of the 5th international conference on Parallel and Distributed Processing and Applications
August 2007
991 pages
ISBN:3540747419

Publisher

Springer-Verlag

Berlin, Heidelberg

Publication History

Published: 29 August 2007

Author Tags

  1. distributed applications
  2. message-oriented middleware
  3. model checking
  4. nondeterminism

Qualifiers

  • Article

Contributors

Other Metrics

Bibliometrics & Citations

Bibliometrics

Article Metrics

  • 0
    Total Citations
  • 0
    Total Downloads
  • Downloads (Last 12 months)0
  • Downloads (Last 6 weeks)0
Reflects downloads up to 15 Oct 2024

Other Metrics

Citations

View Options

View options

Media

Figures

Other

Tables

Share

Share

Share this Publication link

Share on social media