{"status":"ok","message-type":"work","message-version":"1.0.0","message":{"indexed":{"date-parts":[[2025,6,19]],"date-time":"2025-06-19T04:40:11Z","timestamp":1750308011962,"version":"3.41.0"},"reference-count":8,"publisher":"Association for Computing Machinery (ACM)","issue":"4","license":[{"start":{"date-parts":[[2006,10,1]],"date-time":"2006-10-01T00:00:00Z","timestamp":1159660800000},"content-version":"vor","delay-in-days":0,"URL":"https:\/\/www.acm.org\/publications\/policies\/copyright_policy#Background"}],"content-domain":{"domain":["dl.acm.org"],"crossmark-restriction":true},"short-container-title":["SIGBED Rev."],"published-print":{"date-parts":[[2006,10]]},"abstract":"<jats:p>\n            When safety-critical software malfunctions people lives are in danger. When security-critical software is cracked national security or economic activity may be at risk.As more and more software embraces object-oriented programming (OOP) safety-critical and security-critical projects feel compelled to use object-orientation. But what are the guarantees of OOP in terms of safety and security? Are the design goals of OOP aligned with those of safe and secure software (\n            <jats:italic>S<\/jats:italic>\n            <jats:sup>3<\/jats:sup>\n            ) systems?In the following sections we look at key OOP aspects and analyze some of the hazards they introduce with respect to\n            <jats:italic>S<\/jats:italic>\n            <jats:sup>3<\/jats:sup>\n            and outline a possible way of addressing these vulnerabilities. Specifically, after a quick overview of OOP in section 2, section 3 deals with inheritance and shows some of its hazards in terms of\n            <jats:italic>S<\/jats:italic>\n            <jats:sup>3<\/jats:sup>\n            along with possible remedies. Section 4 focuses on dynamic binding and suggests a safer and more secure implementation than what is conventionally done. Finally, section 5 looks at testing programs with dynamic binding.\n          <\/jats:p>","DOI":"10.1145\/1183088.1183092","type":"journal-article","created":{"date-parts":[[2007,1,17]],"date-time":"2007-01-17T18:32:02Z","timestamp":1169058722000},"page":"15-26","update-policy":"https:\/\/doi.org\/10.1145\/crossmark-policy","source":"Crossref","is-referenced-by-count":4,"title":["Safety, security, and object-oriented programming"],"prefix":"10.1145","volume":"3","author":[{"given":"Franco","family":"Gasperoni","sequence":"first","affiliation":[{"name":"AdaCore, Paris, France"}]}],"member":"320","published-online":{"date-parts":[[2006,10]]},"reference":[{"key":"e_1_2_1_1_1","volume-title":"by John Barnes","author":"Ada","year":"2006","unstructured":"{ Ada 2005} Programming in Ada 2005 , by John Barnes . Addison-Wesley , 2006 . {Ada2005} Programming in Ada 2005, by John Barnes. Addison-Wesley, 2006."},{"key":"e_1_2_1_2_1","volume-title":"Communications of the ACM","author":"Special Issue","year":"2001","unstructured":"{ASPECT} Special Issue on Aspect-Oriented Programming , Communications of the ACM , Volume 44 Issue 10, October 2001 . {ASPECT} Special Issue on Aspect-Oriented Programming, Communications of the ACM, Volume 44 Issue 10, October 2001."},{"key":"e_1_2_1_3_1","unstructured":"{DO-178B} Software Consideration in Airborne Systems and Equipment Certification. RTCA\/DO-178B or EUROCAE\/ED-12B 1992.  {DO-178B} Software Consideration in Airborne Systems and Equipment Certification. RTCA\/DO-178B or EUROCAE\/ED-12B 1992."},{"key":"e_1_2_1_4_1","unstructured":"{DO-178C} Forum on Software Considerations in Airborne Systems RTCA\/SC-205 and EUROCAE\/WG-71. Available at http:\/\/forum.pr.erau.edu\/SCAS  {DO-178C} Forum on Software Considerations in Airborne Systems RTCA\/SC-205 and EUROCAE\/WG-71. Available at http:\/\/forum.pr.erau.edu\/SCAS"},{"key":"e_1_2_1_5_1","unstructured":"{DO-248B} Final Report for Clarification of DO-178B. RTCA\/DO-248B or EUROCAE\/ED-94B 2001.  {DO-248B} Final Report for Clarification of DO-178B. RTCA\/DO-248B or EUROCAE\/ED-94B 2001."},{"key":"e_1_2_1_6_1","unstructured":"{ISO15408} Common Criteria for Information Technology Security Evaluation. ISO\/IEC 15408: 2005.  {ISO15408} Common Criteria for Information Technology Security Evaluation. ISO\/IEC 15408:2005."},{"key":"e_1_2_1_7_1","unstructured":"{OOTiA} Handbook for Object-Oriented Technology in Aviation (OOTiA). FAA 2004. Available at : http:\/\/www.faa.gov\/aircraft\/air_cert\/design_approvals\/air_software\/oot  {OOTiA} Handbook for Object-Oriented Technology in Aviation (OOTiA). FAA 2004. Available at : http:\/\/www.faa.gov\/aircraft\/air_cert\/design_approvals\/air_software\/oot"},{"key":"e_1_2_1_8_1","unstructured":"{VerOLink} http:\/\/www.verocel.com\/verolink.htm  {VerOLink} http:\/\/www.verocel.com\/verolink.htm"}],"container-title":["ACM SIGBED Review"],"original-title":[],"language":"en","link":[{"URL":"https:\/\/dl.acm.org\/doi\/10.1145\/1183088.1183092","content-type":"unspecified","content-version":"vor","intended-application":"text-mining"},{"URL":"https:\/\/dl.acm.org\/doi\/pdf\/10.1145\/1183088.1183092","content-type":"unspecified","content-version":"vor","intended-application":"similarity-checking"}],"deposited":{"date-parts":[[2025,6,18]],"date-time":"2025-06-18T15:06:36Z","timestamp":1750259196000},"score":1,"resource":{"primary":{"URL":"https:\/\/dl.acm.org\/doi\/10.1145\/1183088.1183092"}},"subtitle":[],"short-title":[],"issued":{"date-parts":[[2006,10]]},"references-count":8,"journal-issue":{"issue":"4","published-print":{"date-parts":[[2006,10]]}},"alternative-id":["10.1145\/1183088.1183092"],"URL":"https:\/\/doi.org\/10.1145\/1183088.1183092","relation":{},"ISSN":["1551-3688"],"issn-type":[{"type":"electronic","value":"1551-3688"}],"subject":[],"published":{"date-parts":[[2006,10]]},"assertion":[{"value":"2006-10-01","order":2,"name":"published","label":"Published","group":{"name":"publication_history","label":"Publication History"}}]}}