Skip to main content

Slicing of Component Behavior Specification with Respect to Their Composition

  • Conference paper
Component-Based Software Engineering (CBSE 2007)

Part of the book series: Lecture Notes in Computer Science ((LNPSE,volume 4608))

Included in the following conference series:

Abstract

Being an important means of reducing development costs, behavior specification of software components facilitates reuse of a component and even reuse of a component’s architecture (assembly). However, since typically only a part of the components’ functionality is actually used in the new context, a significant part of the behavior specification may be superfluous. As a result, it may be hard to see (and filter out) the actual interplay among the components in their behavior specification. This paper targets the problem in the scope of behavior protocols. It presents a technique for slicing behavior protocols with respect to a given context (composition), designed to remove the unused behavior from a behavior specification. The technique is based on a formal foundation, generic enough to support slicing with respect to a property expressed as a predicate. To demonstrate viability of the proposed approach, a positive experience with behavior specification slicing applied in real-life case study is shared with the reader (along with a short description of a prototype).

This work was partially supported by the Grant Agency of the Czech Republic project 201/06/0770. The results will be applied in the ITEA/EUREKA project OSIRIS Σ!2023.

This is a preview of subscription content, log in via an institution to check access.

Access this chapter

Chapter
USD 29.95
Price excludes VAT (USA)
  • Available as PDF
  • Read on any device
  • Instant download
  • Own it forever
eBook
USD 39.99
Price excludes VAT (USA)
  • Available as PDF
  • Read on any device
  • Instant download
  • Own it forever
Softcover Book
USD 54.99
Price excludes VAT (USA)
  • Compact, lightweight edition
  • Dispatched in 3 to 5 business days
  • Free shipping worldwide - see info

Tax calculation will be finalised at checkout

Purchases are for personal use only

Institutional subscriptions

Preview

Unable to display preview. Download preview PDF.

Unable to display preview. Download preview PDF.

References

  1. Adamek, J., Plasil, F.: Component Composition Errors and Update Atomicity: Static Analysis. Journal of Software Maintenance and Evolution: Research and Practice 17(5), 363–377 (2005)

    Article  Google Scholar 

  2. Allen, R., Garlan, D.: A Formal Basis for Architectural Connection. ACM Transactions on Software Engineering and Methodology 6(3), 213–249 (1997)

    Article  Google Scholar 

  3. Bergstra, J.A., Ponse, A., Smolka, S.A.: Handbook of Process Algebra. Elsevier, Amsterdam (2001)

    MATH  Google Scholar 

  4. Bobeff, G., Noye, J.: Molding Components using Program Specialization Techniques. Eighth International Workshop on Component-Oriented Programming (2003)

    Google Scholar 

  5. Chueng, S.C., Kramer, J.: Compositional Reachability Analysis of Finite-State Distributed Systems with User-Specified Constraints. In: Proceedings of the 3rd ACM SIGSOFT Symposium on Foundations of Software Engineering, pp. 140–150. ACM Press, New York (1995)

    Chapter  Google Scholar 

  6. Cheung, S.C., Kramer, J.: Enhancing Compositional Reachability Analysis with Context Constraints. In: Proceedings of ACM SIGSOFT 1993 Symposium on Foundations of Software Engineering, pp. 115–125. ACM Press, New York (1993)

    Chapter  Google Scholar 

  7. The CRE project (Component Reliability Extensions for Fractal Component Model), http://kraken.cs.cas.cz/ft/public/public_index.phtml

  8. dChecker & BPSlicer, http://dsrg.mff.cuni.cz/projects/dchecker

  9. Gramlich, G., Schnitger, G.: Minimizing NFA’s and Regular Expressions. In: Diekert, V., Durand, B. (eds.) STACS 2005. LNCS, vol. 3404, pp. 399–411. Springer, Heidelberg (2005)

    Google Scholar 

  10. Hassine, J., Dssouli, R., Rilling, J.: Applying Reduction Techniques to Software Functional Requirement Specifications. In: Amyot, D., Williams, A.W. (eds.) SAM 2004. LNCS, vol. 3319, pp. 138–153. Springer, Heidelberg (2005)

    Google Scholar 

  11. JavaCC (Java Compiler Compiler), https://javacc.dev.java.net

  12. Jiang, T., Ravikumar, B.: Minimal NFA problems are hard. SIAM Journal on Computing 22(1), 1117–1141 (1993)

    Article  MATH  MathSciNet  Google Scholar 

  13. Luckham, D.C., Kenney, J.J., Augustin, L.M., Vera, J., Bryan, D., Mann, W.: Specification and Analysis of System Architecture Using Rapide. IEEE Transactions on Software Engineering 21(4), 336–355 (1995)

    Article  Google Scholar 

  14. Meyer, A.R., Stockmeyer, L.J.: The Equivalence Problem for Regular Expressions with Squaring Requires Exponential Space. In: Proceedings of the 13th Annual Symposium on Switching and Automata Theory, FOCS, pp. 125–129 (1972)

    Google Scholar 

  15. van Ommering, R., van der Linden, F., Kramer, J., Magee, J.: The Koala Component Model for Consumer Electronics Software. IEEE Computer 33(3), 78–85 (2000)

    Google Scholar 

  16. Parizek, P., Plasil, F.: Modeling Environment for Component Model Checking from Hierarchical Architecture. In: FACS 2006. Proceedings of Formal Aspects of Component Software, Prague, Czech Republic. ENTCS (2006)

    Google Scholar 

  17. Plasil, F., Visnovsky, S.: Behavior Protocols for Software Components. IEEE Transactions on Software Engineering 28(11), 1056–1076 (2002)

    Article  Google Scholar 

  18. Reussner, R.H.: Automatic component protocol adaptation with the CoConut/J tool suite, Tools for program development and analysis, vol. 19(5), pp. 627–639. Elsevier Science Publishers, Amsterdam (2003)

    Google Scholar 

  19. Sery, O.: Model Checking and Reduction of Behavior Protocols, Master thesis at Charles University in Prague (2006), available at: http://dsrg.mff.cuni.cz

  20. Sloane, A.M., Holdsworth, J.: Beyond Traditional Program Slicing. In: ISSTA 1996. Proceedings of the 1996 ACM SIGSOFT International Symposium on Software Testing and Analysis, pp. 180–186. ACM Press, New York (1996)

    Chapter  Google Scholar 

  21. Stafford, J.A., Richardson, D.J., Wolf, A.L.: Architecture-level Dependence Analysis for Software Systems. International Journal of Software Engineering and Knowledge Engineering 11(4), 431–451 (2001)

    Article  Google Scholar 

  22. Zhao, J.: A Slicing-Based Approach to Extracting Reusable Software Architectures. In: Proceedings of the Conference on Software Maintenance and Reengineering, pp. 215–223. IEEE Computer Society Press, Los Alamitos (2000)

    Chapter  Google Scholar 

Download references

Author information

Authors and Affiliations

Authors

Editor information

Heinz W. Schmidt Ivica Crnkovic George T. Heineman Judith A. Stafford

Rights and permissions

Reprints and permissions

Copyright information

© 2007 Springer-Verlag Berlin Heidelberg

About this paper

Cite this paper

Šerý, O., Plášil, F. (2007). Slicing of Component Behavior Specification with Respect to Their Composition. In: Schmidt, H.W., Crnkovic, I., Heineman, G.T., Stafford, J.A. (eds) Component-Based Software Engineering. CBSE 2007. Lecture Notes in Computer Science, vol 4608. Springer, Berlin, Heidelberg. https://doi.org/10.1007/978-3-540-73551-9_13

Download citation

  • DOI: https://doi.org/10.1007/978-3-540-73551-9_13

  • Publisher Name: Springer, Berlin, Heidelberg

  • Print ISBN: 978-3-540-73550-2

  • Online ISBN: 978-3-540-73551-9

  • eBook Packages: Computer ScienceComputer Science (R0)

Publish with us

Policies and ethics