Checking Framework Interactions with Relationships

作者: Ciera Jaspan , Jonathan Aldrich

DOI: 10.1007/978-3-642-03013-0_3

关键词:

摘要: Software frameworks impose constraints on how plugins may interact with them. Many of these involve multiple objects, are temporal, and depend runtime values. Additionally, they difficult to specify because often extrinsic break behavioral subtyping. This work introduces relationships as an abstraction for specifying framework in FUSION (Framework Usage SpecificatIONs), it presents a formal description implementation static analysis find constraint violations plugin code. We define three variants this analysis: one is sound, complete, pragmatic variant that balances tradeoffs. prove soundness completeness the appropriate variants, we show can effectively check from real-world programs.

参考文章(23)
Xinming Ou, David Walker, Gang Tan, Enforcing Resource Usage Protocols via Scoped Methods ,(2004)
Gavin Bierman, Alisdair Wren, First-class relationships in an object-oriented language european conference on object oriented programming. pp. 262- 286 ,(2005) , 10.1007/11531142_12
Robert DeLine, Manuel Fähndrich, Typestates for Objects european conference on object-oriented programming. ,vol. 3086, pp. 465- 490 ,(2004) , 10.1007/978-3-540-24851-4_21
Patrick Lam, Viktor Kuncak, Martin Rinard, Generalized Typestate Checking for Data Structure Consistency Lecture Notes in Computer Science. pp. 430- 447 ,(2005) , 10.1007/978-3-540-30579-8_28
Mooly Sagiv, Thomas Reps, Reinhard Wilhelm, Parametric shape analysis via 3-valued logic ACM Transactions on Programming Languages and Systems. ,vol. 24, pp. 217- 298 ,(2002) , 10.1145/514188.514190
Barbara H. Liskov, Jeannette M. Wing, A behavioral notion of subtyping ACM Transactions on Programming Languages and Systems. ,vol. 16, pp. 1811- 1841 ,(1994) , 10.1145/197320.197383
Viktor Kuncak, Patrick Lam, Karen Zee, Martin Rinard, Modular Pluggable Analyses for Data Structure Consistency IEEE Transactions on Software Engineering. ,vol. 32, pp. 988- 1005 ,(2006) , 10.1109/TSE.2006.125
Mangala Gowri Nanda, Christian Grothoff, Satish Chandra, Deriving object typestates in the presence of inter-object references Proceedings of the 20th annual ACM SIGPLAN conference on Object oriented programming systems languages and applications - OOPSLA '05. ,vol. 40, pp. 77- 96 ,(2005) , 10.1145/1094811.1094818
Matthew J. Parkinson, Gavin M. Bierman, Separation logic, abstraction and inheritance Proceedings of the 35th annual ACM SIGPLAN-SIGACT symposium on Principles of programming languages - POPL '08. ,vol. 43, pp. 75- 86 ,(2008) , 10.1145/1328438.1328451
Ralph E. Johnson, Frameworks = (components + patterns) Communications of The ACM. ,vol. 40, pp. 39- 42 ,(1997) , 10.1145/262793.262799