We set out to answer a question we were asked by software project management: how much effort remains to be spent on a specific software project and how will that effort be distri...
Reusable components equipped with strict guarantees of quality can help reestablish software development on a stronger footing, by taking advantage of the scaling effect of reuse ...
This study examined the effectiveness of pair programming in four lecture sections of a large introductory programming course. We were particularly interested in assessing how the...
Charlie McDowell, Linda L. Werner, Heather E. Bull...
This paper describes the role of requirements discovery during the testing of a safety-critical software system. Analysis of problem reports generated by the integration and syste...
This paper is intended to sum up the results of the Second International Workshop on Software Engineering for Large-Scale Multi-Agent Systems (SELMAS'03) held in Portland, Or...
In a software development group of IBM Retail Store Solutions, we built a non-trivial software system based on a stable standard specification using a disciplined, rigorous unit t...
Reflection remains a second-class citizen in current programming models, where it's assumed to be imperative and tightly bound to its implementation. In contrast, most object...
An information retrieval technique, latent semantic indexing, is used to automatically identify traceability links from system documentation to program source code. The results of...
Many methods and tools for the reengineering of software systems have been developed so far. However, the domain-specific requirements of telecommunication systems have not been a...
2. Support for User Interaction Source Viewer 3D is a software visualization framework that uses a 3D metaphor to represent software system and analysis data. The 3D representation...