Broken promises: An empirical study into evolution problems in Java programs caused by library upgrades | IEEE Conference Publication | IEEE Xplore