Software development is essentially a human activity. As a result, factors
affecting the behavior of those involved in the development process are of great
importance to the software community. We identify three levels at which behavioral
factors associated with software development can be investigated: individual
behavior, team behavior and organizational behavior. Analysis of studies on
individual and team behavior in software development environments reveals the
failure of existing tools in supporting team-based software development. Our
survey on team practices among software professionals also confirms this fact.
To address this situation we propose a software development environment based
on a blackboard architecture that supports multi-agent, opportunistic problem-solving.
We expect that this architecture holds promise for the next generation software
tools by providing a kernel for team-based software development.