—Software reuse through Application Programming Interfaces (APIs) is an integral part of software development. The functionality offered by an API is not always accessed uniforml...
The process of software development is gradually achieving more rigor. Proficient developers now construct indirectly through the abstraction of models. Models allow a developer t...
Software evolution is made difficult by the need to integrate new features with all previously implemented features in the system. We present Spotlight, a prototype editor for sof...
Open-source development, social production, social networks and other factors change the way we understand software systems. The paper motivates the use of social thinking to desi...
Abstract. This paper uses a framework drawn from work in the philosophy of science to characterize the concepts of program correctness that have been used in software engineering, ...