The long and winding road: Accidents and tinkering in software standardization
Abstract
Software is based on universal principles but not its development. Relating software to hardware is never automatic or easy. Attempts to optimize software production and drastically reduce their costs (like in hardware) have been very restricted. Instead, highly-skilled and experienced individuals are ultimately responsible for project success. The long and convoluted path towards useful and reliable software is often plagued by idiosyncratic accidents and emergent complexity. It was expected that software standardisation would remove these sources of unwanted diversity by aiming at controllable development processes, universal programming languages, and toolkits of reusable software components. However, limited adoption of development standards suggests that we still do not understand why software is so difficult to produce. Software standardisation has been limited by our poor understanding of humans’ role at the origin of technological diversity.
Keywords
Full Text:
PDFReferences
Arthur, W. B. (1994). Increasing returns and path dependence in the economy. Michigan University Press. http://doi.org/10.3998/mpub.10029
Basalla, G. (1988). The evolution of technology. Cambridge University Press. http://doi.org/10.1017/CBO9781107049864
Boehm, B. W. (1976). Software engineering. IEEE Transactions on Computers, 25(12), 1226–1241. http://doi.org/10.1109/TC.1976.1674590
Brooks, F. (1975). The mythical man-month: Essays on software engineering. Addison-Wesley.
Charette, R. N. (2005, September 2). Why software fails. IEEE Spectrum. https://spectrum.ieee.org/computing/software/why-software-fails
Ensmenger, N. L. (2010). The computer boys take over. Computers, programmers, and the politics of technical expertise. The MIT Press.
Glass, R. L. (2009). Doubt and software standards. IEEE Software, 26(5), 104. http://doi.org/10.1109/MS.2009.126
Henning, M. (2008). The rise and fall of CORBA. Communications of the ACM, 51(8), 52–57. http://doi.org/10.1145/1378704.1378718
McDonald, C. (2010). From art form to engineering discipline? A history of US military software development standards, 1974-1998. IEEE Annals of the History of Computing, 32(4), 32–47. http://doi.org/10.1109/MAHC.2009.58
Messoudi, A. (2011). Cultural evolution: How Darwinian theory can explain human culture and synthesize the social sciences. University of Chicago Press.
Petroski, H. (1992). To engineer is human: The role of failure in successful design. Vintage Books.
Schnaars, S., & Wymbs, C. (2004). On the persistence of lackluster demand: The history of the video telephone. Technological Forecasting and Social Change, 71(3), 197–216. http://doi.org/10.1016/S0040-1625(02)00410-9
Tassey, G. (1999). Standardization in technology-based markets. Research Policy, 29(4-5), 587–602. http://doi.org/10.1016/S0048-7333(99)00091-8
Valverde, S. (2016). Major transitions in information technology. Philosophical Transactions of the Royal Society B, 371(1701), 20150450. http://doi.org/10.1098/rstb.2015.0450
Texts in the journal are –unless otherwise indicated– published under a Creative Commons Attribution-NonCommercial-NoDerivatives 4.0 International License
____________________________________________________________________________________________________________________