skip to main content
article

Formal specification of program slicing

Published:01 December 2006Publication History
Skip Abstract Section

Abstract

Program slicing is a well-known technique that has been used in a variety of software engineering areas, such as comprehension, understanding, maintenance, debugging, testing, reuse, metrics, etc. This paper discusses how the formal specification language Z schema calculus may be used to specify program slicing. General aspects of program slicing are considered, i.e. dependence graphs and program slicing algorithms. This formalization could help in the correct understanding of program slicing and also the correct application of a desired slicing regime in a rigorous way.

References

  1. M. Weiser. Program slicing. IEEE Transaction on Software Engineering, Vol. 16, No.5, 1984, pp.498--509.Google ScholarGoogle ScholarDigital LibraryDigital Library
  2. K. Ottenstein, L. Ottenstein. The program dependence graph in a software development environment. ACM SIGPLAN Notices, Vol.19, No.5, 1984, pp. 177--184. Google ScholarGoogle ScholarDigital LibraryDigital Library
  3. J. Ferrante, K. J. Ottenstein, and J. D. Warren. The program dependence graph and its use in optimization. ACM Transactions on Programming Languages and Systems, Vol.9, No.3, 1987, pp. 319--349. Google ScholarGoogle ScholarDigital LibraryDigital Library
  4. S. Horwitz, T. Reps, D. Binkley. Interprocedural slicing using dependence graphs. ACM Transaction on Programming Languages and Systems, Vol. 12, No. 1, 1990, pp. 26--60. Google ScholarGoogle ScholarDigital LibraryDigital Library
  5. F. Tip. A survey of program slicing techniques. Journal of Programming Languages, Vol.3, No.3, 1995, pp 121--189.Google ScholarGoogle Scholar
  6. L. Larsen, M. Harrold. Slicing object-oriented software. 18th International Conference on Software Engineering, Berlin, Germany, March 1996, pp. 495--505. Google ScholarGoogle ScholarDigital LibraryDigital Library
  7. F. Ricca, P. Tonella. Construction of the system dependence graph for Web application slicing. Proceedings of the 2nd IEEE. International Workshop on Source Code Analysis and Manipulation, Montreal, Canada, Oct 1, 2002, pp. 123--132. Google ScholarGoogle ScholarDigital LibraryDigital Library
  8. N. Walkinshaw, M. Roper, and M. Wood. The Java system dependence graph. Proceedings of the 3rd IEEE International Workshop on Source Code Analysis and Manipulation, Amsterdam, Netherlands, SEP 26--27, 2003, pp. 55--64.Google ScholarGoogle ScholarCross RefCross Ref
  9. Wu Fangjun, Yi Tong. Slicing Z specifications. ACM SIGPLAN Notices, Vol.39, No.8, 2004, pp. 39--48. Google ScholarGoogle ScholarDigital LibraryDigital Library
  10. Wu Fangjun. Research on Z formal specifications slicing {Ph.D. thesis}. Jiangxi University of Finance and Economics, 2006.Google ScholarGoogle Scholar
  11. Yi Tong. Research on UML models-oriented dependence analysis and its applications {Ph.D. thesis}. Jiangxi University of Finance and Economics, 2006.Google ScholarGoogle Scholar
  12. T. Rep, W. Yang. The semantics of program slicing and program integration. Lecture Notes in Computer Science, Vol. 352, pp. 360--374. Google ScholarGoogle ScholarDigital LibraryDigital Library
  13. R. Cartwright, M. Felleisen. The semantics of program dependence. ACM SIGPLAN Notices, Vol.24, No.7, 2004, pp. 13--27. Google ScholarGoogle ScholarDigital LibraryDigital Library
  14. G. A. Venkatesh, The semantic approach to program slicing, ACM SIGPLAN Notices, Vol. 26, No. 6, 1991, pp. 107--119. Google ScholarGoogle ScholarDigital LibraryDigital Library
  15. R. Giacobazzi, I. Mastroeni, Non-standard semantics for program slicing. Higher-Order and Symbolic Computation, Vol. 16, No. 4, 2003, pp.297--339. Google ScholarGoogle ScholarDigital LibraryDigital Library
  16. S. Danicic, D. Binkley, T. Gyimothy, M. Harman, O. L. KissAkos. Formalizing executable dynamic and forward slicing. In: Proceedings of 4th Workshop on Source Code Analysis and Manipulation (SCAM 2004), September 14th-15th, 2004, pp. 43--52. Google ScholarGoogle ScholarDigital LibraryDigital Library
  17. J. M. Spivey. The Z Notation: A Reference Manual. Prentice Hall International Series in Computer Science, 2nd edition, 1 Google ScholarGoogle ScholarDigital LibraryDigital Library
  18. Formal specification---Z notation-syntax, type and semantics (consensus working draft 2.6), Z Standards Panel, August 24, 2000. http://www.cs.york.ac.uk/~ian/zstan/Google ScholarGoogle Scholar
  19. X. Jia. ZTC: A type checker for Z notation. user's guide. version 2.03, August 1998. Division of Software Engineering, School of Computer Science, Telecommunication, and Information Systems, DePaul University, USA, 1998Google ScholarGoogle Scholar
  20. Miao Huaikou, Liu Ling, Yu Chuanjiang, Ming Jijun, Lili. Z User Studio: an integrated support tool for Z specifications. In: APSEC 2001. Macua. Dec 4--7, 2001, pp. 437--444. Google ScholarGoogle ScholarDigital LibraryDigital Library

Index Terms

(auto-classified)
  1. Formal specification of program slicing

    Recommendations

    Comments

    Login options

    Check if you have access through your login credentials or your institution to get full access on this article.

    Sign in

    Full Access

    PDF Format

    View or Download as a PDF file.

    PDF

    eReader

    View online with eReader.

    eReader
    About Cookies On This Site

    We use cookies to ensure that we give you the best experience on our website.

    Learn more

    Got it!