Location via proxy:   [ UP ]  
[Report a bug]   [Manage cookies]                
skip to main content
article
Free access

Context constraints for compositional reachability analysis

Published: 01 October 1996 Publication History

Abstract

Behavior analysis of complex distributed systems has led to the search for enhanced reachability analysis techniques which support modularity and which control the state explosion problem. While modularity has been achieved, state explosion in still a problem. Indeed, this problem may even be exacerbated, as a locally minimized subsystem may contain many states and transitions forbidden by its environment or context. Context constraints, specified as interface processes, are restrictions imposed by the environment on subsystem behavior. Recent research has suggested that the state explosion problem can be effectively controlled if context constraints are incorporated in compositional reachability analysis (CRA). Although theoretically very promising, the approach has rarely been used in practice because it generally requires a more complex computational model and does not contain a mechanism to derive context constraints automatically. This article presents a technique to automate the approach while using a similar computational model to that of CRA. Context constraints are derived automatically, based on a set of sufficient conditions for these constraints to be transparently included when building reachability graphs. As a result, the global reachability graph generated using the derived constraints is shown to be observationally equivalent to that generated by CRA without the inclusion of context constraints. Constraints can also be specified explicitly by users, based on their application knowledge. Erroneous constraints which contravene transparency can be identified together with an indication of the error sources. User-specified constraints can be combined with those generated automatically. The technique is illustrated using a clients/server system and other examples.

References

[1]
AVRUNIN, G. S., BuY, U. A., CORBETT, J. C., DILLON, L. K., AND WILEDEN, J. C. 1991. Experiments with an improved constrained expression toolset. In Proceedings of the Symposium on Testing, Analysis, and Verification (TAV4). ACM, New York.
[2]
BERGSTRA, g. A. AND KLOP, g.W. 1985. Algebra of communicating processes with abstraction. Theor. Comput. Sci. 37, 77-121.
[3]
BROOKES, S., HOARE, C. A. R., AND ROSCOE, A. 1984. A theory of communicating sequential processes. ACM 31, 3, 560-599.
[4]
CCITT. 1984. Integrated Services Digital Network (ISDN) Recommendation. CCITT Red Book. Study Group 18, vol. 3, fascicle III.5.
[5]
CHEUNG, S. C. AND KRAMER, J. 1994a. An integrated method for effective behaviour analysis of distributed systems. In Proceedings of the 16th IEEE International Conference on Software Engineering (ICSE16). IEEE, New York.
[6]
CHEUNG, S. C. AND KRAMER, J. 1994b. Tractable dataflow analysis for distributed systems. IEEE Trans. Softw. Eng. 20, 8 (Aug.).
[7]
CHEUNG, S. C. AND KRAMER, J. 1995a. Compositional reachability analysis of finite-state distributed systems with user-specified constraints. In Proceedings of the 3rd ACM SIG- SOFT Symposium on the Foundations of Software Engineering. ACM, New York.
[8]
CHEUNG, S. C. AND KRAMER, J. 1995b. Contextual local analysis in the design of distributed systems. Int. J. Automat. Softw. Eng. 2, 1 (Mar.).
[9]
CLARKE, E. M., EMERSON, E. A., AND SISTLA, A.P. 1983. Automatic verification of finite state concurrent systems using temporal logic specifications: A practical approach. In Proceedings of the lOth Annual ACM Symposium on Principles of Programming Languages. ACM, New York.
[10]
CLARKE, E. M., EMERSON, E. A., AND SISTLA, A.P. 1986. Automatic verification of finite state concurrent systems using temporal logic specifications. ACM Trans. Program. Lang. Syst. 8, 2, 244-263.
[11]
CLARKE, E. M., LONG, D. E., AND MCMILLAN, K.L. 1989. Compositional model checking. In Proceedings of the 4th Annual Symposium on Logic in Computer Science.
[12]
DENICOLA, R. AND HENNESSY, M. 1984. Testing equivalences for processes. Theor. Comput. Sci. 34, 83-133.
[13]
FISCHER, S., SCHOLZ, A., AND TAUBNER, D. 1992. Verification in process algebra of the distributed control of track vehicles--A case study. In Proceedings of the 4th International Workshop on Computer-Aided Verification (CAV'92). ACM, New York.
[14]
GARMAN, J.R. 1981. The bug heard around the world. ACM SIGSOFT Softw. Eng. Notes 6, 5.
[15]
GHEZZI, C., JAZAYERI, M., AND MANDRIOLI, D. 1991. Fundamentals of Software Engineering. Prentice-Hall, Englewood Cliffs, N.J., chapter 6.
[16]
GRAF, S. AND STEFFEN, B. 1990. Compositional minimization of finite state systems. In Proceedings of the 2nd International Conference of Computer-Aided Verification. ACM, New York.
[17]
HAREL, D. 1988. On visual formalisms. Commun. ACM 31, 5, 514-530.
[18]
HELMBOLD, D. AND LUCKHAM, D. 1985. Debugging Ada tasking programs. IEEE Softw. 2, 2 (Mar.), 47-57.
[19]
HENNESSY, M. 1988. Algebraic Theory of Processes. MIT Press, Cambridge, Mass.
[20]
HOARE, C. A. R. 1985. Communicating Sequential Processes. Prentice-Hall, Englewood Cliffs, N.J.
[21]
HOLZMANN, G. 1991. Design and Validation of Computer Protocols. Prentice-Hall, Englewood Cliffs, N.J., chapters 8 and 11.
[22]
HOPCROFT, J. E. AND ULLMAN, J.D. 1979. Introduction to Automata Theory, Languages, and Computation. Addison-Wesley, Reading, Mass.
[23]
KEMPPAINEN, J., LEVANTO, M., VALMARI, A., AND CLEGG, M. 1992. "ARA" puts advanced reachability analysis techniques together. In Proceedings of the 5th Nordic Workshop on Programming Enviornment Research. Also available as Tech. Rep. 14, Software Systems Laboratory, Tampere Univ. of Technology, Tampere, Finland.
[24]
KRAMER, J., MAGEE, J., NG, K., AND SLOMAN, M. 1993. The system architect's assistant for design and construction of distributed systems. In Proceedings of the 4th IEEE Workshop on Future Trends of Distributed Computing Systems. IEEE, New York.
[25]
KRUMM, H. 1989. Projections of the reachability graph and environment models. In Proceedings of the International Workshops on Automatic Verification Methods for Finite State Systems. Lecture Notes in Computer Science, vol. 407. Springer-Verlag, Berlin.
[26]
LARSEN, K. AND MILNER, R. 1987. Verifying a protocol using relativized bisimulation. In Proceedings of the 14th International Colloquium on Automata, Languages and Programruing. Lecture Notes in Computer Science, vol. 267. Springer-Verlag, Berlin.
[27]
LARSEN, K.G. 1989. Compositional theories based on an operational semantics of contexts. In Proceedings of the REX Workshop on Stepwise Refinement of Distributed Systems: Models, Formalisms, Correctness. Lecture Notes in Computer Science, vol. 430. Springer-Verlag, Berlin.
[28]
MALHOTRA, J., SMOLKA, S. A., GIACALONE, A., AND SHAPIRO, R. 1988. A tool for hierarchical design and simulation of concurrent systems. In Proceedings of the BCS-FACS Workshop on Specification and Verification of Concurrent Systems. British Computer Society, Swindon, England.
[29]
MILNER, R. 1989. Communication and Concurrency. P:rentice-Hall, Englewood Cliffs, N.J.
[30]
MILNER, R., FARROW, J., AND WALKER, D. 1989. A calculus of mobile processes part I and II. Tech. Rep. Univ. of Edinburgh, Edinburgh, U.K. June.
[31]
PETERSON, J. L. 1981. Petri Net Theory and the Modelling of Systems. Prentice-Hall, Englewood Cliffs, N.J.
[32]
RABINOVICH, A. 1992. Checking equivalences between concurrent systems of finite agents. In Proceedings of the 19th International Colloquium on Automata, Languages and Programruing. Lecture Notes in Computer Science, vol. 623. Springer-Verlag, Berlin.
[33]
SABNANI, K. K., LAPONE, A. M., AND UYAR, M. U. 1989. An algorithmic procedure for checking safety properties of protocols. IEEE Trans. Commun. 37, 9 (Sept.), 940-948.
[34]
SMOLKA, S.A. 1984. Analysis of communication finite state processes. Ph.D. thesis, CS-84- 05, Dept. of Computer Science, Brown Univ., Providence, R.I.
[35]
TAI, K. C. AND KOPPOL, P.V. 1993. An incremental approach to reachability analysis of distributed programs. In Proceedings of the 7th IEEE International Workshop on Software Specification and Design. IEEE, New York.
[36]
TAYLOR, R.N. 1983a. Complexity of analyzing the synchronization structure of concurrent programs. Acta Informatica 19, 57-84.
[37]
TAYLOR, R. N. 1983b. A general-purpose algorithm for analyzing concurrent programs. Commun. ACM 26, 362-376.
[38]
VALMARI, A. 1991. Compositional state space generation. Tech. Rep., A-1991-5, Dept. of Computer Science, Univ. of Helsinki, Finland. Oct.
[39]
VALMARI, A. 1992. Alleviating state explosion during verification of behavioural equivalence. Tech. Rep., A-1992, Dept. of Computer Science, Univ. of Helsinki, Finland. Aug.
[40]
YEH, W.J. 1993. Controlling state explosion in reachability analysis. Tech. Rep., SERC-TR- 147-P, SERC, Purdue Univ., West Lafayette, Ind. Dec.
[41]
YEH, W. g. AND YOUNG, M. 1991. Compositional reachability analysis using process algebra. In Proceedings of the Symposium on Testing, Analysis, and Verification (TAV4). ACM, New York.

Cited By

View all
  • (2023)Decomposing monolithic processes in a process algebra with multi-actionsJournal of Logical and Algebraic Methods in Programming10.1016/j.jlamp.2023.100858132(100858)Online publication date: Apr-2023
  • (2021)Decomposing Monolithic Processes in a Process Algebra with Multi-actionsElectronic Proceedings in Theoretical Computer Science10.4204/EPTCS.347.4347(57-76)Online publication date: 2-Oct-2021
  • (2021)Evaluating verification awareness as a method for assessing adaptation riskFuture Generation Computer Systems10.1016/j.future.2021.01.034Online publication date: Feb-2021
  • Show More Cited By

Recommendations

Reviews

Alfs T. Berztiss

Reachability analysis of complex distributed systems has been complicated by the explosive growth in the number of states of a system as the number of components in the system increases. Context constraints can control state explosion, and reachability analysis would be greatly improved if the context constraints could be derived automatically. The authors present a method for the automatic derivation of context constraints. The performance gains achieved by their approach, as shown in section 9 of the paper, are impressive. Well-chosen examples clearly convey the flavor of the approach. The paper is self-contained, and can serve as an effective introduction to reachability analysis. However, novices should read section 3 before trying to understand Figures 3 and 4 of section 2.

Access critical reviews of Computing literature here

Become a reviewer for Computing Reviews.

Comments

Information & Contributors

Information

Published In

Publisher

Association for Computing Machinery

New York, NY, United States

Publication History

Published: 01 October 1996
Published in TOSEM Volume 5, Issue 4

Permissions

Request permissions for this article.

Check for updates

Author Tags

  1. compositional techniques
  2. concurrency
  3. context constraints
  4. distributed systems
  5. labeled transition systems
  6. reachability analysis
  7. state space reduction
  8. static analysis
  9. validation

Qualifiers

  • Article

Contributors

Other Metrics

Bibliometrics & Citations

Bibliometrics

Article Metrics

  • Downloads (Last 12 months)52
  • Downloads (Last 6 weeks)7
Reflects downloads up to 22 Sep 2024

Other Metrics

Citations

Cited By

View all
  • (2023)Decomposing monolithic processes in a process algebra with multi-actionsJournal of Logical and Algebraic Methods in Programming10.1016/j.jlamp.2023.100858132(100858)Online publication date: Apr-2023
  • (2021)Decomposing Monolithic Processes in a Process Algebra with Multi-actionsElectronic Proceedings in Theoretical Computer Science10.4204/EPTCS.347.4347(57-76)Online publication date: 2-Oct-2021
  • (2021)Evaluating verification awareness as a method for assessing adaptation riskFuture Generation Computer Systems10.1016/j.future.2021.01.034Online publication date: Feb-2021
  • (2018)Optimizing the Symbolic Execution of Evolving Rhapsody Statecharts10.1016/bs.adcom.2017.09.003(145-281)Online publication date: 2018
  • (2018)To Compose, or Not to Compose, That Is the Question: An Analysis of Compositional State Space GenerationFormal Methods10.1007/978-3-319-95582-7_29(485-504)Online publication date: 12-Jul-2018
  • (2018)Compositional Verification in ActionFormal Methods for Industrial Critical Systems10.1007/978-3-030-00244-2_13(189-210)Online publication date: 30-Aug-2018
  • (2016)Rigorous development of component-based systems using component metadata and patternsFormal Aspects of Computing10.1007/s00165-016-0375-128:6(937-1004)Online publication date: 1-Nov-2016
  • (2015)Compositional Model Checking of Concurrent SystemsIEEE Transactions on Computers10.1109/TC.2014.232970164:6(1607-1621)Online publication date: 1-Jun-2015
  • (2015)On re-assembling self-managed components2015 IFIP/IEEE International Symposium on Integrated Network Management (IM)10.1109/INM.2015.7140362(727-733)Online publication date: May-2015
  • (2015)Compositional verification of asynchronous concurrent systems using CADPActa Informatica10.1007/s00236-015-0226-152:4-5(337-392)Online publication date: 1-Jun-2015
  • Show More Cited By

View Options

View options

PDF

View or Download as a PDF file.

PDF

eReader

View online with eReader.

eReader

Get Access

Login options

Full Access

Media

Figures

Other

Tables

Share

Share

Share this Publication link

Share on social media