{"status":"ok","message-type":"work","message-version":"1.0.0","message":{"indexed":{"date-parts":[[2024,7,23]],"date-time":"2024-07-23T06:33:01Z","timestamp":1721716381953},"reference-count":44,"publisher":"Springer Science and Business Media LLC","issue":"1","license":[{"start":{"date-parts":[[2014,6,24]],"date-time":"2014-06-24T00:00:00Z","timestamp":1403568000000},"content-version":"tdm","delay-in-days":0,"URL":"http:\/\/www.springer.com\/tdm"}],"content-domain":{"domain":["link.springer.com"],"crossmark-restriction":false},"short-container-title":["Int J Softw Tools Technol Transfer"],"published-print":{"date-parts":[[2016,2]]},"DOI":"10.1007\/s10009-014-0325-2","type":"journal-article","created":{"date-parts":[[2014,6,23]],"date-time":"2014-06-23T16:12:33Z","timestamp":1403539953000},"page":"1-19","update-policy":"http:\/\/dx.doi.org\/10.1007\/springer_crossmark_policy","source":"Crossref","is-referenced-by-count":3,"title":["Model-driven generation of runtime checks for system properties"],"prefix":"10.1007","volume":"18","author":[{"given":"Mauro","family":"Pezz\u00e9","sequence":"first","affiliation":[],"role":[{"role":"author","vocabulary":"crossref"}]},{"given":"Jochen","family":"Wuttke","sequence":"additional","affiliation":[],"role":[{"role":"author","vocabulary":"crossref"}]}],"member":"297","published-online":{"date-parts":[[2014,6,24]]},"reference":[{"key":"325_CR1","first-page":"49","volume-title":"Proceedings of the International Workshop on the Construction and Analysis of Safe, Secure, and Interoperable Systems, CASSIS 2004, Series. Lecture Notes in Computer Science","author":"M Barnett","year":"2004","unstructured":"Barnett, M., Leino, K.R.M., Schulte, W.: The Spec# programming system: an overview. In: Barthe, G., Burdy, L., Huisman, M., Lanet, J.-L., Muntean, T. (eds.) Proceedings of the International Workshop on the Construction and Analysis of Safe, Secure, and Interoperable Systems, CASSIS 2004, Series. Lecture Notes in Computer Science, vol. 3362, pp. 49\u201369. Springer, New York (2004)"},{"key":"325_CR2","doi-asserted-by":"crossref","unstructured":"de Caso, G., Braberman, V., Garbervetsky, D., Uchitel, S.: Validation of contracts using enabledness preserving finite state abstractions. In: Proceedings of the 31st International Conference on Software Engineering, ICSE \u201909. IEEE Computer Society, pp. 452\u2013462 (2009)","DOI":"10.1109\/ICSE.2009.5070544"},{"key":"325_CR3","doi-asserted-by":"crossref","first-page":"175","DOI":"10.1007\/978-1-4615-5229-1_12","volume-title":"Behavioral Specifications of Businesses and Systems, Chapter 12","author":"GT\u2018 Leavens","year":"1999","unstructured":"Leavens, G.T\u2018., Baker, A.L., Ruby, C.: JML: a notation for detailed design. In: Kiloc, H., Rumpe, B., Simmonds, I. (eds.) Behavioral Specifications of Businesses and Systems, Chapter 12, pp. 175\u2013188. Kluwer, Boston (1999)"},{"key":"325_CR4","volume-title":"Object-Oriented Software Construction","author":"B Meyer","year":"1997","unstructured":"Meyer, B.: Object-Oriented Software Construction, 2nd edn. Prentice Hall, London (1997)","edition":"2"},{"issue":"1","key":"325_CR5","doi-asserted-by":"crossref","first-page":"19","DOI":"10.1109\/32.341844","volume":"21","author":"DS Rosenblum","year":"1995","unstructured":"Rosenblum, D.S.: A practical approach to programming with assertions. IEEE Trans. Softw. Eng. 21(1), 19\u201331 (1995)","journal-title":"IEEE Trans. Softw. Eng."},{"key":"325_CR6","doi-asserted-by":"crossref","unstructured":"Allan, C., Avgustinov, P., Christensen, A.S., Hendren, L., Kuzins, S., Lhot\u00e1k, O., de Moor, O., Sereni, D., Sittampalam, G., Tibble, J.: Adding trace matching with free variables to AspectJ. In: Proceedings of the 20th Annual ACM SIGPLAN Conference on Object-oriented Programming, Systems, Languages, and Applications, Series OOPSLA \u201905, pp. 345\u2013364 (Online). doi: 10.1145\/1094811.1094839 (2005)","DOI":"10.1145\/1094811.1094839"},{"key":"325_CR7","doi-asserted-by":"crossref","unstructured":"Avgustinov, P., Tibble, J., de Moor, O.: Making trace monitors feasible. In: Proceedings of the 22nd ACM SIGPLAN Conference on Object-Oriented Programming Systems and Applications, Series OOPSLA \u201907, pp. 589\u2013608 (online). doi: 10.1145\/1297027.1297070 (2007)","DOI":"10.1145\/1297027.1297070"},{"issue":"3","key":"325_CR8","doi-asserted-by":"crossref","first-page":"675","DOI":"10.1093\/logcom\/exn076","volume":"20","author":"H Barringer","year":"2010","unstructured":"Barringer, H., Rydeheard, D., Havelund, K.: Rule systems for run-time monitoring: from EAGLE to RULER. J. Logic Comput. 20(3), 675\u2013706 (2010)","journal-title":"J. Logic Comput."},{"key":"325_CR9","doi-asserted-by":"crossref","unstructured":"Bodden, E., Lam, P., Hendren, L.: Clara: a framework for partially evaluating finite-state runtime monitors ahead of time. In: Proceedings of the First International Conference on Runtime Verification \u201910. Springer, Berlin, pp. 183\u2013197. doi: 10.1007\/978-3-642-16612-9_15 (2010)","DOI":"10.1007\/978-3-642-16612-9_15"},{"key":"325_CR10","doi-asserted-by":"crossref","unstructured":"Chen, F., Ro\u015fu, G.: MOP: an efficient and generic runtime verification framework. In: Proceedings of the 22nd ACM SIGPLAN Conference on Object-Oriented Programming Systems and Applications, OOPSLA \u201907. ACM, pp. 569\u2013588 (2007)","DOI":"10.1145\/1297027.1297069"},{"key":"325_CR11","doi-asserted-by":"crossref","first-page":"586","DOI":"10.1007\/978-3-642-04425-0_45","volume-title":"Model Driven Engineering Languages and Systems, Series Lecture Notes in Computer Science","author":"D Drusinsky","year":"2009","unstructured":"Drusinsky, D., Shing, M.-T.: Using UML statecharts with knowledge logic guards. In: Sch\u00fcrr, A., Selic, B. (eds.) Model Driven Engineering Languages and Systems, Series Lecture Notes in Computer Science, vol. 5795, pp. 586\u2013590. Springer, Berlin (2009). doi: 10.1007\/978-3-642-04425-0_45"},{"issue":"2","key":"325_CR12","doi-asserted-by":"crossref","first-page":"200","DOI":"10.1016\/S1571-0661(04)00253-1","volume":"55","author":"K Havelund","year":"2001","unstructured":"Havelund, K., Ro\u015fu, G.: Monitoring Java programs with Java PathExplorer. Electron. Notes Theor. Comput. Sci. 55(2), 200\u2013217 (2001)","journal-title":"Electron. Notes Theor. Comput. Sci."},{"issue":"2","key":"325_CR13","doi-asserted-by":"crossref","first-page":"149","DOI":"10.1007\/s10515-010-0063-y","volume":"17","author":"P Meredith","year":"2010","unstructured":"Meredith, P., Jin, D., Chen, F., Ro\u015fu, G.: Efficient monitoring of parametric context-free patterns. J Autom. Softw. Eng. 17(2), 149\u2013180 (2010)","journal-title":"J Autom. Softw. Eng."},{"key":"325_CR14","doi-asserted-by":"crossref","unstructured":"Dzidek, W.J., Briand, L.C., Labiche, Y.: Lessons learned from developing a dynamic OCL constraint enforcement tool for Java. In: Satellite Events at the MoDELS 2005 Conference, Series Lecture Notes in Computer Science, vol. 3844. Springer, Berlin, pp 10\u201319 (2005)","DOI":"10.1007\/11663430_2"},{"issue":"4","key":"325_CR15","doi-asserted-by":"crossref","first-page":"336","DOI":"10.1109\/32.385971","volume":"21","author":"DC Luckham","year":"1995","unstructured":"Luckham, D.C., Kerry, J.J., Augustin, L.M., Vare, J., Bryan, D., Mann, W.: Specification and analysis of system architecture using Rapide. IEEE Trans. Softw. Eng. 21(4), 336\u2013355 (1995)","journal-title":"IEEE Trans. Softw. Eng."},{"key":"325_CR16","doi-asserted-by":"crossref","unstructured":"Stirewalt, K., Rugaber, S.: Automated invariant maintenance via OCL compilation. In: Proceedings of the 8th International Conference on Model Driven Engineering Languages and Systems, MODELS 2005. Springer, Berlin, pp. 616\u2013632 (2005)","DOI":"10.1007\/11557432_46"},{"key":"325_CR17","doi-asserted-by":"crossref","unstructured":"Wang, K., Shen, W.: Runtime checking of UML association-related constraints. In: Proceedings of the 5th International Workshop on Dynamic Analysis, WODA \u201907. IEEE Computer Society (2007)","DOI":"10.1109\/WODA.2007.8"},{"key":"325_CR18","doi-asserted-by":"crossref","unstructured":"Ciupa, I., Meyer, B., Oriol, M., Pretschner, A.: Finding faults: manual testing vs. random testing + vs. user reports. In: Technical Report, vol. 595. Department of Computer Science, ETH Zurich (2008)","DOI":"10.1109\/ISSRE.2008.18"},{"key":"325_CR19","doi-asserted-by":"crossref","unstructured":"Voas, J.M., Miller, K.W.: Putting assertions in their place. In: Proceedings of the 5th International Symposium on Software Reliability Engineering, ISSRE\u2019 94, pp. 152\u2013157 (1994)","DOI":"10.1109\/ISSRE.1994.341367"},{"key":"325_CR20","first-page":"310","volume-title":"Runtime Verification, Series Lecture Notes in Computer Science","author":"L Pike","year":"2012","unstructured":"Pike, L., Niller, S., Wegmann, N.: Runtime verification for ultra-critical systems. In: Khurshid, S., Sen, K. (eds.) Runtime Verification, Series Lecture Notes in Computer Science, vol. 7186, pp. 310\u2013324. Springer, Berlin (2012). doi: 10.1007\/978-3-642-29860-8_23"},{"key":"325_CR21","first-page":"325","volume-title":"Runtime Verification, Series Lecture Notes in Computer Science","author":"G Wu","year":"2012","unstructured":"Wu, G., Wei, J., Ye, C., Shao, X., Zhong, H., Huang, T.: Runtime verification of data-centric properties in service based systems. In: Khurshid, S., Sen, K. (eds.) Runtime Verification, Series Lecture Notes in Computer Science, vol. 7186, pp. 325\u2013341. Springer, Berlin (2012). doi: 10.1007\/978-3-642-29860-8_24"},{"key":"325_CR22","doi-asserted-by":"crossref","unstructured":"Goldsmith, S.F., O\u2019Callahan, R., Aiken, A.: Relational queries over program traces. In: Proceedings of the 20th ACM SIGPLAN Conference on Object-Oriented Programming, Systems, Languages, and Applications, Series OOPSLA \u201905, pp. 385\u2013402 (online). doi: 10.1145\/1094811.1094841 (2005)","DOI":"10.1145\/1094811.1094841"},{"key":"325_CR23","doi-asserted-by":"crossref","unstructured":"Martin, M., Livshits, B., Lam, M.S.: Finding application errors and security flaws using PQL: a program query language. In: Proceedings of the 20th ACM SIGPLAN Conference on Object-Oriented Programming, Systems, Languages, and Applications, Series OOPSLA \u201905, ACM, New York, pp. 365\u2013383 (online). doi: 10.1145\/1094811.1094840 (2005)","DOI":"10.1145\/1094811.1094840"},{"key":"325_CR24","unstructured":"Chen, F., d\u2019Amorim, M., Ro\u015fu, G.: Checking and correcting behaviors of Java programs at runtime with Java-MOP. Electron. Notes Theor. Comput.Sci. 144(4), 3\u201320 (2006) (online). http:\/\/www.sciencedirect.com\/science\/article\/pii\/S1571066106003008"},{"key":"325_CR25","doi-asserted-by":"crossref","first-page":"129","DOI":"10.1023\/B:FORM.0000017719.43755.7c","volume":"24","author":"M Kim","year":"2004","unstructured":"Kim, M., Viswanathan, M., Kannan, S., Lee, I., Sokolsky, O.: Java-MaC: a run-time assurance approach for Java programs. Formal Methods Syst. Des. 24, 129\u2013155 (2004)","journal-title":"Formal Methods Syst. Des."},{"key":"325_CR26","unstructured":"The Object Management Group: OMG Unified Modeling Language Superstructure. (adopted specification formal\/2007-11-02, http:\/\/www.omg.org ). Accessed 02 Jan 2008 (2007)"},{"key":"325_CR27","unstructured":"The Object Management Group: Object Constraint Language (available specification formal\/06-05-01, http:\/\/www.omg.org ). Accessed 11 Dec 2006 (2005)"},{"key":"325_CR28","doi-asserted-by":"crossref","unstructured":"Hein, C., Ritter, T., Wagner, M.: System monitoring using constraint checking as part of model based system management. In: 2nd International Workshop on Models@run.time (2007)","DOI":"10.1109\/ISADS.2007.41"},{"key":"325_CR29","unstructured":"Richters, M., Gogolla, M.: Aspect-oriented monitoring of UML and OCL constraints. In: AOSD Modeling with UML Workshop at the 6th International Conference on the Unified Modeling Language (UML) (2003)"},{"key":"325_CR30","doi-asserted-by":"crossref","unstructured":"Aldrich, J., Chambers, C., Notkin, D.: ArchJava: connecting software architecture to implementation. In: Proceedings of the 24th International Conference on Software Engineering, ICSE \u201902. ACM, pp. 187\u2013197 (2002)","DOI":"10.1145\/581339.581365"},{"key":"325_CR31","doi-asserted-by":"crossref","DOI":"10.1145\/1595696.1595754","volume-title":"Software Architecture: Foundations, Theory, and Practice","author":"RN Taylor","year":"2009","unstructured":"Taylor, R.N., Medvidovic, N., Dashofy, E.: Software Architecture: Foundations, Theory, and Practice. Wiley, New York (2009)"},{"key":"325_CR32","volume-title":"Design Patterns: Elements of Reusable Object-Oriented Software","author":"E Gamma","year":"1994","unstructured":"Gamma, E., Helm, R., Johnson, R., Vlissides, J.: Design Patterns: Elements of Reusable Object-Oriented Software. Addison-Wesley Professional, New York (1994)"},{"key":"325_CR33","doi-asserted-by":"crossref","unstructured":"Dwyer, M.B., Avrunin, G.S., Corbett, J.C.: Patterns in property specifications for finite-state verification. In: ICSE 1999: Proceedings of the 1999 International Conference on Software Engineering, pp. 411\u2013420 (1999)","DOI":"10.1145\/302405.302672"},{"key":"325_CR34","doi-asserted-by":"crossref","unstructured":"Cobleigh, R.L., Avrunin, G.S., Clarke, L.A.: User guidance for creating precise and accessible property specifications. In: FSE-14: Proceedings of the 14th ACM SIGSOFT International Symposium on Foundations of Software Engineering, pp. 208\u2013218 (2006)","DOI":"10.1145\/1181775.1181801"},{"key":"325_CR35","doi-asserted-by":"crossref","unstructured":"Wuttke, J.: Property templates and assertions supporting runtime failure detection. In: Technical Report, University of Lugano, Switzerland, 04 Aug 2008 (2008)","DOI":"10.1145\/1370175.1370219"},{"key":"325_CR36","unstructured":"Wuttke, J.: Automatically generated runtime checks for design-level properties. Ph.D. dissertation, University of Lugano, Lugano (2010)"},{"key":"325_CR37","volume-title":"AspectJ in Action: Enterprise AOP with Spring","author":"R Laddad","year":"2009","unstructured":"Laddad, R.: AspectJ in Action: Enterprise AOP with Spring, 2nd edn. Manning Publications, New York (2009)","edition":"2"},{"issue":"1","key":"325_CR38","first-page":"1001","volume":"2","author":"A Gorla","year":"2010","unstructured":"Gorla, A., Pezz\u00e9, M., Wuttke, J., Mariani, L., Pastore, F.: Achieving cost-effective software reliability through self-healing. Comput. Inform. 2(1), 1001\u20131022 (2010)","journal-title":"Comput. Inform."},{"key":"325_CR39","doi-asserted-by":"crossref","unstructured":"Denaro, G., Gorla, A., Pezz\u00e8, M.: Datec: dataflow testing of Java classes. In: 31st International Conference on Software Engineering, ICSE\u201909\u2014Companion Volume. IEEE Computer Society, pp. 421\u2013422 (tool demonstration) (2009)","DOI":"10.1109\/ICSE-COMPANION.2009.5071042"},{"key":"325_CR40","unstructured":"Lee, C., Jin, D., Meredith, P.O., Rosu, G.: Towards categorizing and formalizing the JDK API. In: Technical Report, University of Illinois (online). http:\/\/hdl.handle.net\/2142\/30006 (2012)"},{"key":"325_CR41","unstructured":"Java Server Pages 2.1 Specification. http:\/\/jcp.org\/en\/jsr\/detail?id=245 (JSR 245). Accessed Jan 2008 (2006)"},{"key":"325_CR42","doi-asserted-by":"crossref","unstructured":"Unkel, C., Lam, M.S.: Automatic inference of stationary fields: a generalization of Java\u2019s final fields. In: Proceedings of the 35th Annual ACM SIGPLAN-SIGACT Symposium on Principles of Programming Languages, POPL \u201908. ACM, pp. 183\u2013195 (2008)","DOI":"10.1145\/1328438.1328463"},{"key":"325_CR43","unstructured":"The Objective-C 2.0 Programming Language. Apple Inc., Cupertino (2008)"},{"key":"325_CR44","volume-title":"Groovy in Action","author":"D K\u00f6nig","year":"2007","unstructured":"K\u00f6nig, D.: Groovy in Action. Manning Publications, New York (2007)"}],"container-title":["International Journal on Software Tools for Technology Transfer"],"original-title":[],"language":"en","link":[{"URL":"http:\/\/link.springer.com\/content\/pdf\/10.1007\/s10009-014-0325-2.pdf","content-type":"application\/pdf","content-version":"vor","intended-application":"text-mining"},{"URL":"http:\/\/link.springer.com\/article\/10.1007\/s10009-014-0325-2\/fulltext.html","content-type":"text\/html","content-version":"vor","intended-application":"text-mining"},{"URL":"http:\/\/link.springer.com\/content\/pdf\/10.1007\/s10009-014-0325-2","content-type":"unspecified","content-version":"vor","intended-application":"similarity-checking"}],"deposited":{"date-parts":[[2019,8,11]],"date-time":"2019-08-11T20:53:21Z","timestamp":1565556801000},"score":1,"resource":{"primary":{"URL":"http:\/\/link.springer.com\/10.1007\/s10009-014-0325-2"}},"subtitle":[],"short-title":[],"issued":{"date-parts":[[2014,6,24]]},"references-count":44,"journal-issue":{"issue":"1","published-print":{"date-parts":[[2016,2]]}},"alternative-id":["325"],"URL":"https:\/\/doi.org\/10.1007\/s10009-014-0325-2","relation":{},"ISSN":["1433-2779","1433-2787"],"issn-type":[{"value":"1433-2779","type":"print"},{"value":"1433-2787","type":"electronic"}],"subject":[],"published":{"date-parts":[[2014,6,24]]}}}