{"status":"ok","message-type":"work","message-version":"1.0.0","message":{"indexed":{"date-parts":[[2025,9,28]],"date-time":"2025-09-28T04:05:45Z","timestamp":1759032345193},"publisher-location":"Berlin, Heidelberg","reference-count":28,"publisher":"Springer Berlin Heidelberg","isbn-type":[{"type":"print","value":"9783540221593"},{"type":"electronic","value":"9783540248514"}],"content-domain":{"domain":[],"crossmark-restriction":false},"short-container-title":[],"published-print":{"date-parts":[[2004]]},"DOI":"10.1007\/978-3-540-24851-4_20","type":"book-chapter","created":{"date-parts":[[2010,8,8]],"date-time":"2010-08-08T20:36:03Z","timestamp":1281299763000},"page":"440-464","source":"Crossref","is-referenced-by-count":22,"title":["Early Identification of Incompatibilities in Multi-component Upgrades"],"prefix":"10.1007","author":[{"given":"Stephen","family":"McCamant","sequence":"first","affiliation":[],"role":[{"role":"author","vocabulary":"crossref"}]},{"given":"Michael D.","family":"Ernst","sequence":"additional","affiliation":[],"role":[{"role":"author","vocabulary":"crossref"}]}],"member":"297","reference":[{"key":"20_CR1","doi-asserted-by":"crossref","unstructured":"America, P., van der Linden, F.: A parallel object-oriented language with inheritance and subtyping. In: Conference on Object-Oriented Programming, Systems, Languages, and Applications and 4th European Conference on Object-Oriented Programming (OOPSLA\/ECOOP 1990), Ottawa, Canada, pp. 161\u2013168 (1990)","DOI":"10.1145\/97945.97966"},{"key":"20_CR2","doi-asserted-by":"publisher","first-page":"65","DOI":"10.1109\/TSE.1987.232836","volume":"13","author":"A. Black","year":"1987","unstructured":"Black, A., Hutchinson, N., Jul, E., Levy, H., Carter, L.: Distributed and abstract types in Emerald. IEEE Transactions on Software Engineering\u00a013, 65\u201376 (1987)","journal-title":"IEEE Transactions on Software Engineering"},{"key":"20_CR3","doi-asserted-by":"publisher","first-page":"138","DOI":"10.1016\/0890-5401(88)90007-7","volume":"76","author":"L. Cardelli","year":"1988","unstructured":"Cardelli, L.: A semantics of multiple inheritance. Information and Computation\u00a076, 138\u2013164 (1988)","journal-title":"Information and Computation"},{"key":"20_CR4","first-page":"91","volume-title":"Foundations of Component-Based Systems","author":"Y. Chen","year":"2000","unstructured":"Chen, Y., Cheng, B.H.C.: A semantic foundation for specification matching. In: Foundations of Component-Based Systems, pp. 91\u2013109. Cambridge University Press, New York (2000)"},{"key":"20_CR5","unstructured":"Detlefs, D., Nelson, G., Saxe, J.B.: Simplify: A theorem prover for program checking. Technical Report HPL-2003-148, HP Labs, Palo Alto, CA (2003)"},{"key":"20_CR6","doi-asserted-by":"publisher","first-page":"258","DOI":"10.1109\/ICSE.1996.493421","volume-title":"Proceedings of the 18th International Conference on Software Engineering","author":"K.K. Dhara","year":"1996","unstructured":"Dhara, K.K., Leavens, G.T.: Forcing behavioral subtyping through specification inheritance. In: Proceedings of the 18th International Conference on Software Engineering, Berlin, Germany, pp. 258\u2013267. IEEE Computer Society Press, Los Alamitos (1996)"},{"key":"20_CR7","doi-asserted-by":"publisher","first-page":"453","DOI":"10.1145\/360933.360975","volume":"18","author":"E.W. Dijkstra","year":"1975","unstructured":"Dijkstra, E.W.: Guarded commands, nondeterminacy and formal derivation of programs. Communications of the ACM\u00a018, 453\u2013457 (1975)","journal-title":"Communications of the ACM"},{"key":"20_CR8","unstructured":"Ernst, M.D.: Practical fine-grained static slicing of optimized code. Technical Report MSR-TR-94-14, Microsoft Research, Redmond, WA (1994)"},{"key":"20_CR9","doi-asserted-by":"crossref","first-page":"1","DOI":"10.1109\/32.908957","volume":"27","author":"M.D. Ernst","year":"2001","unstructured":"Ernst, M.D., Cockrell, J., Griswold, W.G., Notkin, D.: Dynamically discovering likely program invariants to support program evolution. IEEE Transactions on Software Engineering\u00a027, 1\u201325 (2001); A previous version appeared in ICSE 1999, Proceedings of the 21st International Conference on Software Engineering, Los Angeles, CA, USA, May 19\u201321, pp. 213\u2013224 (1999)","journal-title":"IEEE Transactions on Software Engineering"},{"key":"20_CR10","doi-asserted-by":"crossref","unstructured":"Flanagan, C., Saxe, J.B.: Avoiding exponential explosion: Generating compact verification conditions. In: Proceedings of the 28th Annual ACM SIGPLAN-SIGACT Symposium on Principles of Programming Languages, London, UK, pp. 193\u2013205 (2001)","DOI":"10.1145\/360204.360220"},{"key":"20_CR11","unstructured":"Free Software Foundation: GNU C library (2003), \n                    \n                      http:\/\/www.gnu.org\/software\/libc\/libc.html"},{"key":"20_CR12","volume-title":"Systematic Software Development using VDM","author":"C.B. Jones","year":"1990","unstructured":"Jones, C.B.: Systematic Software Development using VDM, 2nd edn. Prentice Hall, Englewood Cliffs (1990)","edition":"2"},{"key":"20_CR13","first-page":"113","volume-title":"Foundations of Component-Based Systems","author":"G.T. Leavens","year":"2000","unstructured":"Leavens, G.T., Dhara, K.K.: Concepts of behavioral subtyping and a sketch of their extension to component-based systems. In: Foundations of Component-Based Systems, pp. 113\u2013135. Cambridge University Press, New York (2000)"},{"key":"20_CR14","doi-asserted-by":"publisher","first-page":"1811","DOI":"10.1145\/197320.197383","volume":"16","author":"B.H. Liskov","year":"1994","unstructured":"Liskov, B.H., Wing, J.M.: A behavioral notion of subtyping. ACM Transactions on Programming Languages and Systems\u00a016, 1811\u20131841 (1994)","journal-title":"ACM Transactions on Programming Languages and Systems"},{"key":"20_CR15","doi-asserted-by":"crossref","unstructured":"McCamant, S., Ernst, M.D.: Predicting problems caused by component upgrades. In: Proceedings of the 10th European Software Engineering Conference and the 11th ACM SIGSOFT Symposium on the Foundations of Software Engineering, Helsinki, Finland, pp. 287\u2013296 (2003)","DOI":"10.1145\/940071.940110"},{"key":"20_CR16","unstructured":"McCamant, S., Ernst, M.D.: Predicting problems caused by component upgrades. Technical Report 941, MIT Laboratory for Computer Science, Cambridge, MA, Revision of first author\u2019s Master\u2019s thesis (2004)"},{"key":"20_CR17","unstructured":"Moisan, S., Ressouche, A., Rigault, J.P.: Behavioral substitutability in component frameworks: A formal approach. In: Proceedings of the 2003 Workshop of Specification and Verification of Component Based Systems, Helsinki, Finland (2003)"},{"key":"20_CR18","doi-asserted-by":"crossref","unstructured":"Necula, G.C.: Translation validation for an optimizing compiler. In: Proceedings of the ACM SIGPLAN 2000 Conference on Programming Language Design and Implemenptation, Vancouver, BC, Canada, pp. 83\u201394 (2000)","DOI":"10.1145\/349299.349314"},{"key":"20_CR19","doi-asserted-by":"crossref","unstructured":"Necula, G.C., Lee, P.: The design and implementation of a certifying compiler. In: Proceedings of the ACM SIGPLAN 1998 Conference on Programming Language Design and Implementation, Montreal, Canada, pp. 333\u2013344 (1998)","DOI":"10.1145\/277650.277752"},{"key":"20_CR20","doi-asserted-by":"publisher","first-page":"1","DOI":"10.1145\/165854.167976","volume-title":"Proceedings of the Eighth Annual Conference on Object-Oriented Programming Systems, Languages, and Applications","author":"O. Nierstrasz","year":"1993","unstructured":"Nierstrasz, O.: Regular types for active objects. In: Proceedings of the Eighth Annual Conference on Object-Oriented Programming Systems, Languages, and Applications, pp. 1\u201315. ACM Press, New York (1993)"},{"key":"20_CR21","unstructured":"Penix, J., Alexander, P.: Toward automated component adaptation. In: Proceedings of the 9th International Conference on Software Engineering and Knowledge Engineering (SEKE 1997), Madrid, Spain, June 18-20 (1997)"},{"key":"20_CR22","doi-asserted-by":"crossref","unstructured":"Reps, T., Horwitz, S., Sagiv, M.: Precise interprocedural dataflow analysis via graph reachability. In: Proceedings of the 22nd Annual ACM SIGPLAN-SIGACT Symposium on Principles of Programming Languages, San Francisco, CA, pp. 49\u201361 (1995)","DOI":"10.1145\/199448.199462"},{"key":"20_CR23","doi-asserted-by":"crossref","unstructured":"Schaffert, C., Cooper, T., Bullis, B., Kilian, M., Wilpolt, C.: An introduction to Trellis\/Owl. In: Conference on Object-Oriented Programming Systems, Languages and Applications, Portland, OR, USA, pp. 9\u201316 (1986)","DOI":"10.1145\/28697.28699"},{"key":"20_CR24","doi-asserted-by":"crossref","unstructured":"Schumann, J., Fischer, B.: NORA\/HAMMR: Making deduction-based software component retrieval practical. In: Proceedings of the 1997 International Conference on Automated Software Engineering (ASE 1997), Lake Tahoe, California, pp. 246\u2013254 (1997)","DOI":"10.1109\/ASE.1997.632845"},{"key":"20_CR25","unstructured":"The Open Group, ed.: The Single UNIX Specification, Version 3. The Open Group (2003), \n                    \n                      http:\/\/www.unix.org\/version3\/"},{"key":"20_CR26","first-page":"121","volume":"3","author":"F. Tip","year":"1995","unstructured":"Tip, F.: A survey of program slicing techniques. Journal of Programming Languages\u00a03, 121\u2013189 (1995)","journal-title":"Journal of Programming Languages"},{"key":"20_CR27","doi-asserted-by":"publisher","first-page":"310","DOI":"10.1145\/131736.131756","volume":"1","author":"W. Yang","year":"1992","unstructured":"Yang, W., Horwitz, S., Reps, T.: A program integration algorithm that accommodates semantics-preserving transformations. ACM Transactions on Software Engineering and Methodology\u00a01, 310\u2013354 (1992)","journal-title":"ACM Transactions on Software Engineering and Methodology"},{"key":"20_CR28","doi-asserted-by":"publisher","first-page":"333","DOI":"10.1145\/261640.261641","volume":"6","author":"A.M. Zaremski","year":"1997","unstructured":"Zaremski, A.M., Wing, J.M.: Specification matching of software components. ACM Transactions on Software Engineering and Methodology\u00a06, 333\u2013369 (1997)","journal-title":"ACM Transactions on Software Engineering and Methodology"}],"container-title":["Lecture Notes in Computer Science","ECOOP 2004 \u2013 Object-Oriented Programming"],"original-title":[],"link":[{"URL":"http:\/\/link.springer.com\/content\/pdf\/10.1007\/978-3-540-24851-4_20.pdf","content-type":"unspecified","content-version":"vor","intended-application":"similarity-checking"}],"deposited":{"date-parts":[[2021,5,3]],"date-time":"2021-05-03T03:15:18Z","timestamp":1620011718000},"score":1,"resource":{"primary":{"URL":"http:\/\/link.springer.com\/10.1007\/978-3-540-24851-4_20"}},"subtitle":[],"short-title":[],"issued":{"date-parts":[[2004]]},"ISBN":["9783540221593","9783540248514"],"references-count":28,"URL":"https:\/\/doi.org\/10.1007\/978-3-540-24851-4_20","relation":{},"ISSN":["0302-9743","1611-3349"],"issn-type":[{"type":"print","value":"0302-9743"},{"type":"electronic","value":"1611-3349"}],"subject":[],"published":{"date-parts":[[2004]]}}}