Abstract
This paper introduces a policy-based slicing of Hibernate Query Language (HQL) based on a refined notion of dependence graph. The policies are defined on persistent objects, rather than transient objects, which are stored in an underlying database. We extend the Class Dependence Graph (ClDG) of object-oriented languages to the case of HQL, and we refine it by applying semantics-based Abstract Interpretation framework. This leads to a slicing refinement of HQL programs, producing more precise slices w.r.t. policies and we refine by using semantics equivalence, according to the Abstract Interpretation framework.
Chapter PDF
Similar content being viewed by others
References
Bagnara, R., Hill, P.M., Zaffanella, E.: The ppl: Toward a complete set of numerical abstractions for the analysis and verification of hardware and software systems. Tech. rep., Dipartimento di Matematica, Universit‘a di Parma, Italy (2006)
Bauer, C., King, G.: Hibernate in Action. Manning Publications Co. (2004)
Canfora, G., Cimitile, A., Lucia, A.D.: Conditioned program slicing. Information and Software Technology 40(11–12), 595–607 (1998)
Chen, L., Miné, A., Cousot, P.: A sound floating-point polyhedra abstract domain. In: Ramalingam, G. (ed.) APLAS 2008. LNCS, vol. 5356, pp. 3–18. Springer, Heidelberg (2008)
Cortesi, A., Halder, R.: Information-flow analysis of hibernate query language. In: Dang, T.K., Wagner, R., Neuhold, E., Takizawa, M., Küng, J., Thoai, N. (eds.) FDSE 2014. LNCS, vol. 8860, pp. 262–274. Springer, Heidelberg (2014)
Cousot, P., Cousot, R.: Abstract interpretation: a unified lattice model for static analysis of programs by construction or approximation of fixpoints. In: Proc. of the POPL 1977, pp. 238–252 (1977)
Cousot, P., Halbwachs, N.: Automatic discovery of linear restraints among variables of a program. In: Proceedings of the POPL 1978, pp. 84–96 (1978)
Glass, R.L.: It failure rates-70% or 10–15%? IEEE Software 22(3), 112–111 (2005)
Gyimóthy, T., Paakki, J.: Static slicing of logic programs. In: Automated and Algorithmic Debugging, pp. 87–103 (1995)
Halder, R., Cortesi, A.: Abstract program slicing of database query languages. In: Proc. of the 28th Annual ACM SAC, pp. 838–845 (2013)
Halder, R., Cortesi, A.: Abstract interpretation of database query languages. Computer Languages, Systems & Structures 38, 123–157 (2012)
Halder, R., Cortesi, A.: Abstract program slicing on dependence condition graphs. Sci. Comput. Program. 78(9), 1240–1263 (2013)
Horwitz, S., Reps, T., Binkley, D.: Interprocedural slicing using dependence graphs. ACM Transactions on PLS 12(1), 26–60 (1990)
Kelner, J.A., Spielman, D.A.: A randomized polynomial-time simplex algorithm for linear programming. In: Proc. of the Theory of Computing, pp. 51–60 (2006)
King, T., Barrett, C., Tinelli, C.: Leveraging linear and mixed integer programming for smt. In: Proc. of the 14th ICFMCAD lausanne, Switzerland (to appear) (2014)
Larsen, L., Harrold, M.J.: Slicing object-oriented software. In: Proc. of the 18th ICSE, pp. 495–505 (1996)
Mastroeni, I., Zanardini, D.: Data dependencies and program slicing: from syntax to abstract semantics. In: Proc. of the ACM symposium on PEPM, pp. 125–134 (2008)
Megiddo, N.: Linear programming in linear time when the dimension is fixed. Journal of the ACM 31(1), 114–127 (1984)
Minè, A.: The octagon abstract domain. Higher Order Symbol. Comput. 19(1), 31–100 (2006). http://www.astree.ens.fr/
Ottenstein, K.J., Ottenstein, L.M.: The program dependence graph in a software development environment. ACM SIGPLAN Notices 19(5), 177–184 (1984)
Podgurski, A., Clarke, L.A.: A formal model of program dependences and its implications for software testing, debugging, and maintenance. IEEE Transactions on Software Engineering 16(9), 965–979 (1990)
Rodrigues, N.F., Barbosa, L.S.: Slicing functional programs by calculation. In: Beyond Program Slicing, November 06–11, 2005 (2005)
Tip, F.: A survey of program slicing techniques. Tech. rep. (1994)
Weiser, M.: Program slicing. IEEE Trans on SE SE–10(4), 352–357 (1984)
Willmor, D., Embury, S.M., Shao, J.: Program slicing in the presence of a database state. In: Proc. of the 20th Int. Conf. on Software Maintenance, pp. 448–452 (2004)
Author information
Authors and Affiliations
Corresponding author
Editor information
Editors and Affiliations
Rights and permissions
Copyright information
© 2015 IFIP International Federation for Information Processing
About this paper
Cite this paper
Jana, A., Halder, R., Chaki, N., Cortesi, A. (2015). Policy-Based Slicing of Hibernate Query Language. In: Saeed, K., Homenda, W. (eds) Computer Information Systems and Industrial Management. CISIM 2015. Lecture Notes in Computer Science(), vol 9339. Springer, Cham. https://doi.org/10.1007/978-3-319-24369-6_22
Download citation
DOI: https://doi.org/10.1007/978-3-319-24369-6_22
Published:
Publisher Name: Springer, Cham
Print ISBN: 978-3-319-24368-9
Online ISBN: 978-3-319-24369-6
eBook Packages: Computer ScienceComputer Science (R0)