Software agents "living" and acting in a real world software environment, such as an operating system, a network, or a database system, can carry out many tasks for huma...
The complexity of software systems makes design reuse a necessary task in the software development process. CASE tools can provide cognitive assistance in this task, helping the so...
Enabling nonexperts to understand a software system and the scenarios of usage of that system can be challenging. Visually modeling a collection of scenarios as social interaction...
A 1968 study of the software process led, inter alia, to the observation that the software process constitutes a feedback system. Attempts at its management and improvement must t...
Global and distributed software development increases the need to find and connect developers with relevant expertise. Existing recommendation systems typically model expertise b...
David Ma, David Schuler, Thomas Zimmermann, Jonath...