{"status":"ok","message-type":"work","message-version":"1.0.0","message":{"indexed":{"date-parts":[[2025,9,28]],"date-time":"2025-09-28T04:06:43Z","timestamp":1759032403744,"version":"3.40.3"},"publisher-location":"Cham","reference-count":21,"publisher":"Springer International Publishing","isbn-type":[{"type":"print","value":"9783030034269"},{"type":"electronic","value":"9783030034276"}],"license":[{"start":{"date-parts":[[2018,1,1]],"date-time":"2018-01-01T00:00:00Z","timestamp":1514764800000},"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":[],"published-print":{"date-parts":[[2018]]},"DOI":"10.1007\/978-3-030-03427-6_7","type":"book-chapter","created":{"date-parts":[[2018,10,29]],"date-time":"2018-10-29T16:54:48Z","timestamp":1540832088000},"page":"51-57","update-policy":"https:\/\/doi.org\/10.1007\/springer_crossmark_policy","source":"Crossref","is-referenced-by-count":5,"title":["Increasing the Reusability of Enforcers with Lifecycle Events"],"prefix":"10.1007","author":[{"given":"Oliviero","family":"Riganelli","sequence":"first","affiliation":[]},{"given":"Daniela","family":"Micucci","sequence":"additional","affiliation":[]},{"given":"Leonardo","family":"Mariani","sequence":"additional","affiliation":[]}],"member":"297","published-online":{"date-parts":[[2018,10,30]]},"reference":[{"key":"7_CR1","unstructured":"Apache Felix iPOJO - Lifecycle callbacks. http:\/\/tiny.cc\/iyvoty"},{"key":"7_CR2","unstructured":"Kubernetes - Container Lifecycle Hooks. http:\/\/tiny.cc\/k9voty"},{"key":"7_CR3","unstructured":"OSGi - Life Cycle Layer. http:\/\/tiny.cc\/k9voty"},{"key":"7_CR4","unstructured":"OSGi Alliance - The Dynamic Module System for Java. https:\/\/www.osgi.org"},{"key":"7_CR5","unstructured":"React - A JavaScript library for building user interfaces. http:\/\/tiny.cc\/iyvoty"},{"key":"7_CR6","unstructured":"React - State and Lifecycle. https:\/\/reactjs.org\/docs\/state-and-lifecycle.html"},{"key":"7_CR7","unstructured":"Spring - Customizing the nature of a bean. http:\/\/tiny.cc\/rs2oty"},{"key":"7_CR8","unstructured":"Xposed. http:\/\/repo.xposed.info\/"},{"key":"7_CR9","unstructured":"Android: The Activity Lifecycle. https:\/\/developer.android.com\/guide\/components\/activities\/activity-lifecycle.html"},{"issue":"4","key":"7_CR10","doi-asserted-by":"publisher","first-page":"239","DOI":"10.1007\/s10207-011-0137-2","volume":"10","author":"N Bielova","year":"2011","unstructured":"Bielova, N., Massacci, F.: Do you really mean what you actually enforced? Int. J. Inf. Secur. (IS) 10(4), 239\u2013254 (2011)","journal-title":"Int. J. Inf. Secur. (IS)"},{"key":"7_CR11","series-title":"Lecture Notes in Computer Science","doi-asserted-by":"publisher","first-page":"88","DOI":"10.1007\/978-3-642-35632-2_11","volume-title":"Runtime Verification","author":"Y Falcone","year":"2013","unstructured":"Falcone, Y., Currea, S., Jaber, M.: Runtime verification and enforcement for android applications with RV-Droid. In: Qadeer, S., Tasiran, S. (eds.) RV 2012. LNCS, vol. 7687, pp. 88\u201395. Springer, Heidelberg (2013). https:\/\/doi.org\/10.1007\/978-3-642-35632-2_11"},{"issue":"3","key":"7_CR12","doi-asserted-by":"publisher","first-page":"349","DOI":"10.1007\/s10009-011-0196-8","volume":"14","author":"Y Falcone","year":"2012","unstructured":"Falcone, Y., Fernandez, J.C., Mounier, L.: What can you verify and enforce at runtime? Int. J. Softw. Tools Technol. Transfer 14(3), 349\u2013382 (2012)","journal-title":"Int. J. Softw. Tools Technol. Transfer"},{"key":"7_CR13","doi-asserted-by":"crossref","unstructured":"Hall\u00e9, S., Ettema, T., Bunch, C., Bultan, T.: Eliminating navigation errors in web applications via model checking and runtime enforcement of navigation state machines. In: Proceedings of the International Conference on Automated Software Engineering (ASE) (2010)","DOI":"10.1145\/1858996.1859044"},{"key":"7_CR14","doi-asserted-by":"crossref","unstructured":"Hou, D., Li, L.: Obstacles in using frameworks and APIs: an exploratory study of programmers\u2019 newsgroup discussions. In: Proceedings of the International Conference on Program Comprehension (ICPC) (2011)","DOI":"10.1109\/ICPC.2011.21"},{"key":"7_CR15","series-title":"Lecture Notes in Computer Science","doi-asserted-by":"publisher","first-page":"458","DOI":"10.1007\/978-3-319-26187-4_42","volume-title":"Web Information Systems Engineering \u2013 WISE 2015","author":"A Kumar","year":"2015","unstructured":"Kumar, A., Ligatti, J., Tu, Y.-C.: Query monitoring and analysis for database privacy - a security automata model approach. In: Wang, J., et al. (eds.) WISE 2015. LNCS, vol. 9419, pp. 458\u2013472. Springer, Cham (2015). https:\/\/doi.org\/10.1007\/978-3-319-26187-4_42"},{"issue":"1","key":"7_CR16","doi-asserted-by":"publisher","first-page":"2","DOI":"10.1007\/s10207-004-0046-8","volume":"4","author":"J Ligatti","year":"2005","unstructured":"Ligatti, J., Bauer, L., Walker, D.: Edit automata: enforcement mechanisms for run-time security policies. Int. J. Inf. Secur. 4(1), 2\u201316 (2005)","journal-title":"Int. J. Inf. Secur."},{"issue":"3","key":"7_CR17","doi-asserted-by":"publisher","first-page":"19:1","DOI":"10.1145\/1455526.1455532","volume":"12","author":"J Ligatti","year":"2009","unstructured":"Ligatti, J., Bauer, L., Walker, D.: Run-time enforcement of nonsafety policies. ACM Trans. Inf. Syst. Secur. 12(3), 19:1\u201319:39 (2009)","journal-title":"ACM Trans. Inf. Syst. Secur."},{"key":"7_CR18","doi-asserted-by":"crossref","unstructured":"Riganelli, O., Micucci, D., Mariani, L.: Healing data loss problems in android apps. In: Proceedings of the International Workshop on Software Faults (IWSF), Co-located with ISSRE (2016)","DOI":"10.1109\/ISSREW.2016.50"},{"key":"7_CR19","doi-asserted-by":"crossref","unstructured":"Riganelli, O., Micucci, D., Mariani, L.: Policy enforcement with proactive libraries. In: Proceedings of the 12th International Symposium on Software Engineering for Adaptive and Self-Managing Systems (SEAMS) (2017)","DOI":"10.1109\/SEAMS.2017.9"},{"key":"7_CR20","series-title":"Lecture Notes in Computer Science","doi-asserted-by":"publisher","first-page":"241","DOI":"10.1007\/978-3-319-67531-2_15","volume-title":"Runtime Verification","author":"O Riganelli","year":"2017","unstructured":"Riganelli, O., Micucci, D., Mariani, L., Falcone, Y.: Verifying policy enforcers. In: Lahiri, S., Reger, G. (eds.) RV 2017. LNCS, vol. 10548, pp. 241\u2013258. Springer, Cham (2017). https:\/\/doi.org\/10.1007\/978-3-319-67531-2_15"},{"key":"7_CR21","doi-asserted-by":"crossref","unstructured":"Wang, W., Godfrey, M.W.: Detecting API usage obstacles: a study of ios and android developer questions. In: Proceedings of the Working Conference on Mining Software Repositories (MSR) (2013)","DOI":"10.1109\/MSR.2013.6624006"}],"container-title":["Lecture Notes in Computer Science","Leveraging Applications of Formal Methods, Verification and Validation. Industrial Practice"],"original-title":[],"language":"en","link":[{"URL":"http:\/\/link.springer.com\/content\/pdf\/10.1007\/978-3-030-03427-6_7","content-type":"unspecified","content-version":"vor","intended-application":"similarity-checking"}],"deposited":{"date-parts":[[2020,12,28]],"date-time":"2020-12-28T18:04:21Z","timestamp":1609178661000},"score":1,"resource":{"primary":{"URL":"http:\/\/link.springer.com\/10.1007\/978-3-030-03427-6_7"}},"subtitle":[],"short-title":[],"issued":{"date-parts":[[2018]]},"ISBN":["9783030034269","9783030034276"],"references-count":21,"URL":"https:\/\/doi.org\/10.1007\/978-3-030-03427-6_7","relation":{},"ISSN":["0302-9743","1611-3349"],"issn-type":[{"type":"print","value":"0302-9743"},{"type":"electronic","value":"1611-3349"}],"subject":[],"published":{"date-parts":[[2018]]},"assertion":[{"value":"30 October 2018","order":1,"name":"first_online","label":"First Online","group":{"name":"ChapterHistory","label":"Chapter History"}},{"value":"ISoLA","order":1,"name":"conference_acronym","label":"Conference Acronym","group":{"name":"ConferenceInfo","label":"Conference Information"}},{"value":"International Symposium on Leveraging Applications of Formal Methods","order":2,"name":"conference_name","label":"Conference Name","group":{"name":"ConferenceInfo","label":"Conference Information"}},{"value":"Limassol","order":3,"name":"conference_city","label":"Conference City","group":{"name":"ConferenceInfo","label":"Conference Information"}},{"value":"Cyprus","order":4,"name":"conference_country","label":"Conference Country","group":{"name":"ConferenceInfo","label":"Conference Information"}},{"value":"2018","order":5,"name":"conference_year","label":"Conference Year","group":{"name":"ConferenceInfo","label":"Conference Information"}},{"value":"5 November 2018","order":7,"name":"conference_start_date","label":"Conference Start Date","group":{"name":"ConferenceInfo","label":"Conference Information"}},{"value":"9 November 2018","order":8,"name":"conference_end_date","label":"Conference End Date","group":{"name":"ConferenceInfo","label":"Conference Information"}},{"value":"8","order":9,"name":"conference_number","label":"Conference Number","group":{"name":"ConferenceInfo","label":"Conference Information"}},{"value":"isola2018","order":10,"name":"conference_id","label":"Conference ID","group":{"name":"ConferenceInfo","label":"Conference Information"}},{"value":"http:\/\/www.isola-conference.org\/isola2018\/","order":11,"name":"conference_url","label":"Conference URL","group":{"name":"ConferenceInfo","label":"Conference Information"}},{"value":"Single-blind","order":1,"name":"type","label":"Type","group":{"name":"ConfEventPeerReviewInformation","label":"Peer Review Information (provided by the conference organizers)"}},{"value":"Equinocs","order":2,"name":"conference_management_system","label":"Conference Management System","group":{"name":"ConfEventPeerReviewInformation","label":"Peer Review Information (provided by the conference organizers)"}},{"value":"149","order":3,"name":"number_of_submissions_sent_for_review","label":"Number of Submissions Sent for Review","group":{"name":"ConfEventPeerReviewInformation","label":"Peer Review Information (provided by the conference organizers)"}},{"value":"126","order":4,"name":"number_of_full_papers_accepted","label":"Number of Full Papers Accepted","group":{"name":"ConfEventPeerReviewInformation","label":"Peer Review Information (provided by the conference organizers)"}},{"value":"0","order":5,"name":"number_of_short_papers_accepted","label":"Number of Short Papers Accepted","group":{"name":"ConfEventPeerReviewInformation","label":"Peer Review Information (provided by the conference organizers)"}},{"value":"85% - The value is computed by the equation \"Number of Full Papers Accepted \/ Number of Submissions Sent for Review * 100\" and then rounded to a whole number.","order":6,"name":"acceptance_rate_of_full_papers","label":"Acceptance Rate of Full Papers","group":{"name":"ConfEventPeerReviewInformation","label":"Peer Review Information (provided by the conference organizers)"}},{"value":"2","order":7,"name":"average_number_of_reviews_per_paper","label":"Average Number of Reviews per Paper","group":{"name":"ConfEventPeerReviewInformation","label":"Peer Review Information (provided by the conference organizers)"}},{"value":"3","order":8,"name":"average_number_of_papers_per_reviewer","label":"Average Number of Papers per Reviewer","group":{"name":"ConfEventPeerReviewInformation","label":"Peer Review Information (provided by the conference organizers)"}},{"value":"Yes","order":9,"name":"external_reviewers_involved","label":"External Reviewers Involved","group":{"name":"ConfEventPeerReviewInformation","label":"Peer Review Information (provided by the conference organizers)"}},{"value":"invitation-based event","order":10,"name":"additional_info_on_review_process","label":"Additional Info on Review Process","group":{"name":"ConfEventPeerReviewInformation","label":"Peer Review Information (provided by the conference organizers)"}}]}}