Software Development: A View from the Outside
- Author(s): Eischen, Kyle
- et al.
From the outside looking in, software development debates seem to be thriving. Both software engineering and craft-based method advocates appear no closer to a consensus now than thirty years ago. Considering the debate from a social and economic viewpoint helps reframe the issue, moving towards a clearer understanding of software and software development. There is much that is unique in software, but also much that, especially conceptually, is and has been debated, discussed and learned before. This places software development debates within historical and current perspective. Bringing software into non-technical frameworks involves translating software issues into equivalent social and economic problem domains. The very act of translating and viewing software through social science domains raises questions - What is software? Why is it hard to make? Why do we care? - that normally are assumed by insiders as obvious and well understood. However, such assumptions are often the central issue at stake that prevents solutions from forming.
While there is general agreement on the goal of producing high-quality, low cost software, underlying assumptions concerning the rationalization of software, managing communication and the role of domain-knowledge remain at the heart of development debates. Developing new analogies outside of the current dichotomy of craft and engineering can help highlight these central issues. This also enables software development to learn from existing research on innovation, intellectual work, and information industries to bring new tools to an old debate. Placing domain-knowledge and design at the center of software discussions, opens up a series of issues that can guide software development questions in the short and long-term future.