Artigo Acesso aberto

The end of software engineering and the start of economic-cooperative gaming

2004; ComSIS Consortium; Volume: 1; Issue: 1 Linguagem: Inglês

10.2298/csis0401001c

ISSN

2406-1018

Autores

Alistair Cockburn,

Tópico(s)

Knowledge Management and Sharing

Resumo

"Software engineering" was introduced as a model for the field of software development in 1968. This paper, reconsidering that model in the light of four decades of experience, finds it lacking in its ability to explain project success and failures, predict important issues in running projects and help practitioners formulate effective strategies on the fly. An alternative underlying model for software development is presented: Software development as a series of resource-limited, goal-directed cooperative games of invention and communication. The primary goal of each game is the production and deployment of a software system; the residue of the game is a set of markers to assist the players of the next game. People use markers and props to remind, inspire and inform each other in getting to the next move in the game. The next game is an alteration of the system or the creation of a neighboring system. Each game therefore has as a secondary goal to create an advantageous position for the next game. Since each game is resource-limited the primary and secondary goals compete for resources. The cooperative-game model provides the benefits that the software engineering model misses: It raises to the proper priority level issues crucial to successful software projects; it explains how teams with messy-looking processes sometimes outperform others with tidier processes; and it helps busy practitioners decide how to respond to unexpected situations. Finally, it is seen that much of engineering in the general belongs in the category of resource-limited cooperative games.

Referência(s)