Program Comprehension in Feature-Oriented Software Development

Total Page:16

File Type:pdf, Size:1020Kb

Program Comprehension in Feature-Oriented Software Development Framework for Measuring Program Comprehension Dissertation zur Erlangung des akademischen Grades Doktoringenieurin (Dr.-Ing.) angenommen durch die Fakultat¨ fur¨ Informatik der Otto-von-Guericke-Universitat¨ Magdeburg von Dipl.-Inform. Dipl.-Psych. Janet Siegmund geb. am 15. Februar 1982 in Blankenburg Gutachter: Prof. Dr. Gunter Saake Prof. Arie van Deursen, Ph.D. Prof. Don Batory, Ph.D. Promotionskolloquium: Magdeburg, 27. November 2012 Siegmund, Janet Framework for Measuring Program Comprehension Dissertation, Otto-von-Guericke-Universitat¨ Magdeburg, 2012. i Abstract Program comprehension is a major human factor in software development. It often makes the difference between success and failure of a software product, because main- tenance programmers spend most of their time with understanding code, and because maintenance is the main cost factor in software development. Thus, if program com- prehension is not supported properly, time and cost for software development increase significantly. Although program comprehension has such importance, researchers and practition- ers do not consider it properly, but use plausibility arguments to claim positive or neg- ative effects on program comprehension. Program comprehension is an internal cogni- tive process, so we cannot rely on plausibility arguments only, but need to conduct con- trolled experiments to empirically evaluate what improves and what impairs program comprehension. We believe that one reason for this mismatch between the importance of program comprehension and its insufficient evaluation is the effort of conducting con- trolled experiments. Thus, a plethora of new programming paradigms and techniques exist that suppos- edly improve program comprehension, but have not been evaluated empirically to con- firm a positive effect on program comprehension. Although there is effort to improve program comprehension, it is not clear whether this effort has success. To improve the current situation, we define two goals in this thesis: First, reducing the effort for con- ducting controlled experiments, and, second, creating first empirical evidence how one of the plethora of new approaches, feature-oriented software development, affects pro- gram comprehension. To address our first goal, we first evaluate whether software measures represent a suitable alternative to controlled experiments. Software measures rely only on source- code properties and do not require observing human participants. However, the results indicate that software measure are not a reliable substitute for controlled experiments with human participants. Hence, we aim at reducing the effort for controlled experi- ments with human participants. To this end, we conduct a literature survey of controlled experiments of the last ten years published in seven major journals and conferences of the software-engineering domain. This way, we get an overview of the state of the art of measuring program comprehension, on which we base a framework to support plan- ning, conducting, and replicating experiments. Specifically, we provide a list of con- founding parameters for program comprehension, including control techniques, so that researchers know how the validity of experiments is threatened and how they can ad- dress the threats. Doing so, we reduce the major obstacle for conducting controlled exper- iments with human participants. Furthermore, we develop and evaluate a questionnaire to reliably and conveniently measure programming experience, the most important con- founding parameter for program comprehension. Additionally, we provide a tool that helps researchers to design and replicate experiments. With our second goal, we analyze how a specific programming approach, feature- oriented software development, affects program comprehension. To this end, we conduct a series of controlled experiments, in which we show how different facets of feature- oriented software development affect program comprehension. Specifically, we show ii how background colors speed up program comprehension in terms of locating code frag- ments. Furthermore, we evaluate whether a claimed benefit for program comprehension, which is separation of code along features, really improves program comprehension. Acknowledgements There are numerous people I like to thank for their support during the last three years. First, I thank Norbert, my loving husband. He always cheered me up when nobody wanted to read my papers, and shared the happy moments when I finally started to get papers accepted. Thank you so much. I also like to thank Christian Kastner¨ and Sven Apel. Christian constantly doubted my work, and Sven always believed in it. This way, I learned how to convince others of my work: If I can convince Christian, then I can convince everyone. They were a great team of advisors and I am very glad I know them both. I consider Christian and Sven not only as advisors, but also as colleagues and friends. Without you, Norbert would have much harder work in cheering me up. My supervisor Gunter Saake gave me the freedom to follow my research ideas. He always had time to listen to my concerns and taking care of my funding. Furthermore, he supported me with my visit of Don Batory at the University of Texas at Austin. My six-months trip to the University of Texas was an awesome experience. I thank Don Batory for his great support during this time. He added a lot of interesting input to my research and helped to improve my English and style of writing. Furthermore, I like to thank all my friends for taking my mind off research and helped to make the last three years really awesome. Also many thanks to all my participants, who made this work possible in the first place. I also like to thank Arie van Deursen, who agreed to review my thesis on short notice, although he knew it would be more than 200 pages to read. CONTENTS iii Contents Contents iii List of Figures ix List of Tables xii List of Abbreviations xiv 1 Introduction1 1.1 Contributions...................................3 1.2 Outline.......................................4 1.2.1 Part I....................................4 1.2.2 Part II....................................5 1.3 Limitation.....................................5 1.4 How to Read this Thesis.............................6 2 Background7 2.1 Program Comprehension.............................7 2.1.1 Top-down Models............................7 2.1.2 Bottom-up Models............................8 2.1.3 Integrated Models............................8 2.1.4 Discussion of Comprehension Models.................9 2.1.5 Measuring Program Comprehension.................. 10 2.2 Experiments.................................... 11 2.2.1 Objective Definition........................... 12 2.2.2 Design................................... 13 2.2.3 Experiment Execution.......................... 15 CONTENTS iv 2.2.4 Data Analysis............................... 15 2.2.5 Interpretation............................... 18 2.2.6 Ethical Issues............................... 19 2.3 Feature-Oriented Software Development................... 19 2.3.1 Physical Separation of Concerns.................... 20 2.3.2 Virtual Separation of Concerns..................... 22 2.4 MobileMedia.................................... 23 2.5 Summary...................................... 24 I Framework for Conducting Program-Comprehension Experiments 26 3 Software Measures and Program Comprehension 27 3.1 Background: Software Measures........................ 28 3.1.1 Size Measures............................... 29 3.1.2 Complexity Measures.......................... 30 3.1.3 Concern Measures............................ 30 3.2 Experimental Design............................... 31 3.2.1 Objective.................................. 32 3.2.2 Material.................................. 32 3.2.3 Participants................................ 33 3.2.4 Tasks.................................... 35 3.2.5 Experiment Execution.......................... 36 3.3 Experiment Results................................ 36 3.4 Software Measures and Program Comprehension.............. 38 3.4.1 Software Measures of Complete System................ 39 3.4.2 Software Measures in Terms of Concerns............... 39 3.4.3 Software Measures Related to Files................... 39 3.4.4 Software Measures Weighted with Response Time.......... 40 3.5 Discussion..................................... 42 3.6 Threats to Validity................................. 43 3.6.1 Internal Validity.............................. 43 3.6.2 External Validity............................. 43 3.7 Related Work................................... 44 3.8 Summary...................................... 45 CONTENTS v 4 Confounding Parameters 46 4.1 Importance of Confounding Parameters.................... 47 4.2 Methodology of Literature Survey....................... 48 4.3 State of the Art................................... 51 4.3.1 Describing Confounding Parameters.................. 51 4.3.2 Measuring and Controlling for Confounding Parameters...... 52 4.3.3 Number of Confounding Parameters................. 53 4.4 Background: Controlling for Confounding Parameters........... 53 4.4.1 Randomization.............................. 54 4.4.2 Matching.................................. 54 4.4.3 Keep Confounding Parameter Constant................ 55 4.4.4 Use Confounding Parameter as Independent Variable........ 56 4.4.5 Analyze the Influence of Confounding Parameter on Result.... 56 4.4.6 Summary of Control Techniques.................... 56 4.5 Identified Confounding Parameters.....................
Recommended publications
  • Scanned Document
    UNIVERSIDADE FEDERAL DE SANTA CATARINA TECNOLOGIAS DA INFORMAÇÃO E COMUNICAÇÃO ELLEN LARISSA DE CARVALHO AQUINO DA PARTICIPAÇÃO AO ATIVISMO: AS TECNOLOGIAS DA INFORMAÇÃO E COMUNICAÇÃO ALIADAS AO FEMINISMO. Araranguá, Dezembro de 2015 ELLEN LARISSA DE CARVALHO AQUINO DA PARTICIPAÇÃO AO ATIVISMOS: AS TECNOLOGIAS DA INFORMAÇÃO E COMUNICAÇÃO ALIADAS AO FEMINISMO Trabalho de Curso submetido à Universidade Federal de Santa Catarina como parte dos requisitos necessários para a obtenção do Grau de Bacharel em Tecnologias Da Informação e Comunicação. Sob a orientação do Professor Giovani M. Lunardi. Araranguá, 2015 ERRATA Folha Linha Onde se lê Leia-se Ficha de identificação da obra elaborada pelo autor, através do Programa de Geração Automática da Biblioteca Universitária da UFSC. Aquino, Ellen Larissa de Carvalho Aquino DA PARTICIPAÇÃO AO ATIVISMO: AS TECNOLOGIAS DA INFORMAÇÃO E COMUNICAÇÃO ALIADAS AO FEMINISMO. / Ellen Larissa de Carvalho Aquino Aquino ; orientador, Giovani M. Lunardi Lunardi - Araranguá, SC, 2015. 112 p. Trabalho de Conclusão de Curso (graduação) - Universidade Federal de Santa Catarina, Campus Araranguá. Graduação em Tecnologias da Informação e Comunicação. Inclui referências 1. Tecnologias da Informação e Comunicação. 2. Ativismo. 3. Gênero. 4. Feminismo . 5. Tecnociência . I. Lunardi, Giovani M. Lunardi. II. Universidade Federal de Santa Catarina. Graduação em Tecnologias da Informação e Comunicação. III. Título. “Dedico este trabalho a todos que me incentivaram, em especial a minha família". AGRADECIMENTOS Agradeço primeiramente a Deus, pela sua graça e amor que são fundamentais pra mim. A minha mãe Edilene, por nunca ter medido esforços em proporcionar o melhor, por ser minha eterna professora, pela dedicação e amor que nunca faltaram. Ao meu pai José Augusto, por todo incentivo ao longo da minha vida, e por todo conhecimento que possuí, porque me fazem nunca querer encontrar limite na ciência.
    [Show full text]
  • Trick Questions, Zen-Like Riddles, Insanely Difficult Puzzles, and Other
    Begin Reading Table of Contents Newsletters Copyright Page In accordance with the U.S. Copyright Act of 1976, the scanning, uploading, and electronic sharing of any part of this book without the permission of the publisher constitute unlawful piracy and theft of the author’s intellectual property. If you would like to use material from the book (other than for review purposes), prior written permission must be obtained by contacting the publisher at [email protected]. Thank you for your support of the author’s rights. To the memory of Martin Gardner (1914–2010), whose influence on this book’s subject matter is considerable. A hundred prisoners are each locked in a room with three pirates, one of whom will walk the plank in the morning. Each prisoner has ten bottles of wine, one of which has been poisoned; and each pirate has twelve coins, one of which is counterfeit and weighs either more or less than a genuine coin. In the room is a single switch, which the prisoner may either leave as it is or flip. Before being led into the rooms, the prisoners are all made to wear either a red hat or a blue hat; they can see all the other prisoners’ hats but not their own. Meanwhile, a six-digit prime number of monkeys multiply until their digits reverse, then all have to get across a river using a canoe that can hold at most two monkeys at a time. But half the monkeys always lie and the other half always tell the truth. Given that the Nth prisoner knows that one of the monkeys doesn’t know that a pirate doesn’t know the product of two numbers between 1 and 100 without knowing that the N + 1th prisoner has flipped the switch in his room or not after having determined which bottle of wine was poisoned and what color his hat is, what is the solution to this puzzle? —Internet parody of a job interview question One Outnumbered at the Googleplex What It Takes to Get Hired at a Hyperselective Company Jim was sitting in the lobby of Google’s Building 44, Mountain View, California, surrounded by half a dozen others in various states of stupor.
    [Show full text]
  • Legendsincomputing.Pdf
    Anita Jones z 2007 IEEE Founders Medal z Director of Defense Research and Engineering at the U.S. Department of Defense from 1993 to 1997 z Fellow of the z Association for Computing Machinery (ACM) z American Association for the Advancement of Science z IEEE z Author of two books and more than 40 papers z U.S. Air Force Meritorious Civilian Service Award z Distinguished Public Service Award z Congressional Record tribute z Augusta Ada Lovelace Award from the Association for Women in Computing z Lawrence R. Quarles Professor in the Computer Science Department at the University of Virginia’s School of Engineering and Applied Science Legends in Computing Amy Pearl Designer and implementer of the Sun Link Service, an open protocol for creating hypertext links between elements of desktop applications Legends in Computing Programming the Eniac z Programs were not stored z Every new problem required new connections Legends in Computing Stephanie Rosenthal z Computing Research Association Outstanding Female Undergraduate Award, 2007 z research at CMU on social robotics led to two publications. z research on collaborative learning, potential interfaces for use with interactive whiteboards and experiments about issues in collaboration, resulted in a first-authored publication. Legends in Computing 1950s Assembler Programming Class This would be so much easier with a computer… Legends in Computing Elaine Kant z Founder and president of SciComp z Fellow of the American Association for Artificial Intelligence z Fellow of the American Association for the Advancement of Science z Outstanding Achievement Award in Science/Technology, from University YWCA z U.S. Patent No.
    [Show full text]
  • JOHN BACKUS: a Restless Inventor
    JOHN BACKUS: a restless inventor Excerpt from Out of their Minds: the lives and discoveries of 15 great computer scientists by Dennis Shasha and Cathy Lazere, Copernicus Press We didn’t know what we wanted and how to do it. It just sort of grew. The first struggle was over what the language would look like. Then how to parse expressions — it was a big problem and what we did looks astonishingly clumsy now.... John Backus on the invention of FORTRAN Necessity, says the adage, is the mother of invention. Yet some inventors are motivated less by necessity than by sheer irritation at the messiness or inefficiency of the way things are. John Backus is such an inventor. He played an inspirational role in three great creations: FORTRAN, the first high level programming language; Backus-Naur Form, which provides a way to describe grammatical rules for high level languages; and lastly a functional programming language called FP, which advocates a mathematical approach to programming. Today, each of his inventions drives research and commercial agendas throughout the planet. Yet Backus’s own life is one of restless energy — from his youth through his retirement. A distaste for inefficiency seems to run in the family. Before World War I, Backus’s father had risen from a modest background to the post of chief chemist for the Atlas Powder Company, a manufacturer of nitroglycerine to be used in explosives. His promotion came for good reason. Their plants kept blowing up or having very poor yields and they couldn’t figure out why. The yield was very temperature sensitive.
    [Show full text]
  • The Personal Is Archival: Researching and Teaching with Stories of Women Engineers, Scientists, and Doctors
    History Conference Papers, Presentations and Posters History 4-2018 The Personal is Archival: Researching and Teaching With Stories of Women Engineers, Scientists, and Doctors Amy Bix Iowa State University, [email protected] Follow this and additional works at: https://lib.dr.iastate.edu/history_conf Part of the Cultural History Commons, Engineering Commons, Science and Mathematics Education Commons, and the Women's Studies Commons Recommended Citation Bix, Amy, "The Personal is Archival: Researching and Teaching With Stories of Women Engineers, Scientists, and Doctors" (2018). History Conference Papers, Presentations and Posters. 5. https://lib.dr.iastate.edu/history_conf/5 This Conference Proceeding is brought to you for free and open access by the History at Iowa State University Digital Repository. It has been accepted for inclusion in History Conference Papers, Presentations and Posters by an authorized administrator of Iowa State University Digital Repository. For more information, please contact [email protected]. The Personal is Archival: Researching and Teaching With Stories of Women Engineers, Scientists, and Doctors Abstract Personal stories from archives are essential to understand the historical gendering of American science, medicine, technology, and innovation. Advocates promoted science, medicine, and engineering to young men, yet the twentieth-century brought increasing numbers of women into STEM education and employment. This paper illustrates the above by offering guidance to key archival and digital collections that show how women (individually and as groups) made places for themselves in modern science, technology, and medicine. Sources illustrate complex intersections for women simultaneously shaping professional and personal identities. This paper suggests how historians can reach beyond individual biographies to build broader analyses that deploy insights about personal experiences to parse cultural understandings of STEM and diversity.
    [Show full text]
  • 10 Greatest Female Programmers of All Time
    10 Greatest Female Programmers of All Time BY VICKY SINGH RAO MAY 9, 2018 “Most of the successful programmers are male” this is one of the many common misconceptions about programmers. Female programmers are often seen out of the spotlight and their contribution is less known to the world. Today we’ve decided to bring a list of top 10 female programmers whose contribution played a huge role in the field of computer science and information technology. 1. Grace Hopper Grace Murray Hopper (Dec 9, 1906 – Jan 1, 1992) was one of the first programmers of the Harvard Mark I computer. She invented the first compiler for a computer programming language and the one of those who popularized the idea of machine-independent programming languages. Her ideas influenced the development of COBOL, one of the first high-level programming languages. She introduced the term “debugging” for fixing computer glitches and programming errors. She is also remembered as “Amazing Grace”. 2. Ada Lovelace Ada Byron, also known as Lady Lovelace (10 Dec 1815 – 27 Nov 1852) was a writer and gifted mathematician. She was the first woman to devise an algorithm that could be processed a by a machine or the computer. Suffice to say based on her notes the algorithm she invented would have been accurately processed on the first general machine computer. She is thus considered the world’s first computer programmer. 3. Lois Haibt Lois Mitchell Haibt (born 1934) is an American computer scientist. She was one of the ten-person team at IBM that developed FORTRAN, the first successful high-level programming language.
    [Show full text]
  • John W. Backus 3 December 1924 – 17 March 2007
    John W. Backus 3 December 1924 { 17 March 2007 Ren´eGabri¨els Dirk Gerrits Peter Kooijmans May 29, 2007 2R930 Geschiedenis van Informatica 2004/2005 Faculteit Wiskunde & Informatica Technische Universiteit Eindhoven 0531594 Ren´eGabri¨els <[email protected]> 0531798 Dirk Gerrits <[email protected]> 0538533 Peter Kooijmans <[email protected]> 1 CONTENTS Contents 1 Introduction2 2 Early years (1924 - 1950)2 3 Programming the IBM SSEC (1950 - 1952)3 4 Speedcoding (1952 - 1953)4 5 FORTRAN (1953 - 1958)5 5.1 The situation in 1953................................5 5.2 The IBM 704....................................6 5.3 The case for a more effective programming system...............7 5.4 The proposed language...............................7 5.5 The compiler....................................9 5.6 FORTRAN I.................................... 10 5.7 Programming in FORTRAN............................ 11 5.8 FORTRAN II and further............................. 13 5.9 Influence....................................... 13 5.10 Working on the LARC and STRETCH...................... 15 6 ALGOL (1957 - 1963) 15 6.1 The international algebraic language (IAL)................... 15 6.2 The proposed language............................... 16 6.3 The need for BNF................................. 17 6.4 Influence....................................... 19 7 The four color theorem (1961 - 1971) 20 8 Closed applicative languages (1971 - 1976) 21 9 Turing Award lecture (1977-1978) 23 9.1 The case against \von Neumann languages"..................
    [Show full text]
  • FUNDAMENTOS DE PROGRAMACION Sarah Valentina
    FUNDAMENTOS DE PROGRAMACION Sarah Valentina Sánchez Torres Ilse Dayana Alfonso Bonilla 1002 IED SAN JOSEMARIA ESCRIVA DE BALAGUER Tecnología e Informática Chía, Cundinamarca 2014 INTRODUCCION Este trabajo tiene como objetivo, identificar los tipos de lenguajes de programación, para la realización de un proyecto que se ha venido planteando ya desde hace unos meses junto con el profesor del área de informática y es la creación de juegos, el ideal es que estos juegos sean constructivos y emitan un mensaje educativo para aquellos que ingresen a estos, para el desarrollo de este proyecto es necesaria esta investigación previa sobre la programación de los computadores y los lenguajes de programación. Un lenguaje de programación no es más que un sistema estructurado y diseñado principalmente para que las máquinas y computadoras se entiendan entre sí y con nosotros, los humanos. Contiene un conjunto de acciones consecutivas que el ordenador debe ejecutar. Estos lenguajes de programación usan diferentes normas o bases y se utilizan para controlar cómo se comporta una máquina (por ejemplo, un ordenador), también pueden usarse para crear programas informáticos, etc. Para finalizar Hoy en día utilizamos aplicaciones para todo, programas especializados en diferentes tareas, etc.…si queremos saber qué hay detrás de todo eso necesitamos nadar en el maravilloso e interesante mundo de los lenguajes de programación y así entender por qué cuando a un juego le doy al botón “play” puedo empezar a jugar, o sencillamente por qué puedo hacer una suma en una
    [Show full text]
  • John Backus Video Interview Transcript
    John Backus Video Interview Transcript Interviewed by: Grady Booch September 5, 2006, Ashland, Oregon This video interview and its transcript were originally produced by the Computer History Museum as part of their Oral History activities and are copyrighted by them (CHM Reference number: 3715.2007 © 2006 Computer History Museum). The Computer History Museum has generously allowed the ACM to use these resources. GB: Grady GB (Interviewer) JB: (John Backus, interviewee) GB: I’m here today with John Backus and I should probably put the day’s date [September 5, 2006] on here for the calendar, for the purpose of filming. But there’s probably more computational power in this Sony camera than there was in the first computer upon which you worked. JB: Oh, I’m sure. GB: You are a person whose career has spanned the ages of contemporary computing, from the earliest days of some of the first machines that really made an impact upon the commercial world, to where we are today. Of those years, what do you think surprised you the most, of the changes you’ve seen? JB: Well, I think just the speed of change. I mean it’s just appalling. GB: Appalling. JB: Yes, because I mean all these refrigerator-sized machines that I first worked with soon became smaller and smaller and smaller until-- GB: In fact, as I read some of the interviews, you’re a fan of the Palm Pilot and I think you had a TiVo at one time. JB: I still do. GB: Still have a TiVo, which probably did have more computational power than the first machines upon which you worked.
    [Show full text]
  • Lo Que Se De Computación
    ISBN: 978-968-9304-57-9 lo que se de computación COORDINADORES Luis Manuel Martínez Hernández Paula Elvira Ceceñas Torrero María Elizabeth Leyva Arellano COORDINADORES Luis Manuel Martínez Hernández Paula Elvira Ceceñas Torrero María Elizabeth Leyva Arellano Autores Luis Manuel Martínez Hernández Universidad Juárez del Estado de Durango (UJED) Instituto de Investigaciones Históricas - UJED Facultad de Ciencias Exactas – UJED Facultad de Psicología – UJED Universidad Pedagógica de Durango Red Durango de Investigadores Educativos, A. C. Verónica Clementina Ontiveros Hernández Universidad Pedagógica de Durango María Elizabeth Leyva Arellano Facultad de Ciencias Químicas – UJED Área Básica - UJED Alumnos de la Facultad de Ciencias Exactas – UJED Karla Karina Sánchez Torres Valeria Yaneth Flores Casas Brianda Estefania Saenz Fuente Eduardo Reza Gurrola Cyntia Mayte Salazar Rios Raymundo Galindo Alvarez Dorely Diaz Centeno Carlos Alberto Márquez Alanis Franci del Rocio Almeida Torres Maria José Hernández Silva Carlos Omar Silva Aguirre Revisión Yareli Villalba Segovia Yenifer Rivas García 2 Primera Edición: Octubre de 2015 Editado en México ISBN: 978-968-9304-57-9 Editor: Universidad Juárez del Estado de Durango Coeditores: Red Durango de Investigadores Educativos, A. C. Benemérita y Centenaria Escuela Normal del Edo. de Dgo. Universidad Pedagógica de Durango Centro de Actualización del Magisterio (Durango) Instituto Universitario Anglo Español Instituto de Investigaciones Históricas - UJED Facultad de Ciencias Exactas – UJED Facultad de Psicología
    [Show full text]
  • The Origins of FORTRAN
    The Origins of FORTRAN Peter Crouch Chairman Fortran Specialist Group A Confession I must confess that my title is somewhat misleading. While there is a little about FORTRAN in the 1950s this talk is mainly an introduction to the 1982 IBM film of interviews with John Backus and colleagues. FORTRAN Conceived In late 1953, John Backus sent a brief letter to his boss at IBM, asking that he be allowed to search for a "better way" of programming computers, with a project timescale of six months. He got the nod and began the research project that would eventually produce FORTRAN. As John Backus says in the film, “project completion was always six months away”! FORTRAN Announced FORTRAN, the first high level programming language, was announced to the computing world by John Backus and his team from IBM at the Western Joint Computer Conference held in Los Angeles, California in February 1957 John Backus' team in the late 1950s Photo source The photo on the previous slide is a very small image taken from the on- line version of a New York Times article by Steve Lohr from June 13, 2001 entitled "Pioneers of the 'Fortran' Language". A copy of the article is available at www.fortran.bcs.org/2001/pioneers.html (c) New York Times 2001 FORTRAN Delivered In mid-April 1957 the first documented delivery of the FORTRAN compiler for the IBM 704 took place to Westinghouse- Bettis for use in nuclear reactor design An IBM 704 mainframe Sources Previous slide Photo of an IBM 704 mainframe, courtesy of Lawrence Livermore National Laboratory, which I found on Wikipedia.
    [Show full text]
  • The Computer Boys Take Over History of Computing William Aspray, Editor
    The Computer Boys Take Over History of Computing William Aspray, editor John Agar The Government Machine: A Revolutionary History of the Computer William Aspray John von Neumann and the Origins of Modern Computing William Aspray and Paul E. Ceruzzi, editors The Internet and American Business Charles J. Bashe, Lyle R. Johnson, John H. Palmer, and Emerson W. Pugh IBM ’ s Early Computers Martin Campbell-Kelly From Airline Reservations to Sonic the Hedgehog: A History of the Software Industry Paul E. Ceruzzi A History of Modern Computing I. Bernard Cohen Howard Aiken: Portrait of a Computer Pioneer I. Bernard Cohen and Gregory W. Welch, editors Makin ’ Numbers: Howard Aiken and the Computer Nathan Ensmenger The Computer Boys Take Over: Computers, Programmers, and the Politics of Technical Expertise John Hendry Innovating for Failure: Government Policy and the Early British Computer Industry Michael Lindgren Glory and Failure: The Difference Engines of Johann M ü ller, Charles Babbage, and Georg and Edvard Scheutz David E. Lundstrom A Few Good Men from Univac Ren é Moreau The Computer Comes of Age: The People, the Hardware, and the Software Arthur L. Norberg Computers and Commerce: A Study of Technology and Management at Eckert-Mauchly Computer Company, Engineering Research Associates, and Remington Rand, 1946 – 1957 Emerson W. Pugh Building IBM: Shaping an Industry and Its Technology Emerson W. Pugh Memories That Shaped an Industry Emerson W. Pugh, Lyle R. Johnson, and John H. Palmer IBM ’ s 360 and Early 370 Systems Kent C. Redmond and Thomas M. Smith From Whirlwind to MITRE: The R & D Story of the SAGE Air Defense Computer Alex Roland with Philip Shiman Strategic Computing: DARPA and the Quest for Machine Intelligence, 1983 – 1993 Ra ú l Rojas and Ulf Hashagen, editors The First Computers: History and Architectures Dorothy Stein Ada: A Life and a Legacy John Vardalas The Computer Revolution in Canada: Building National Technological Competence, 1945 – 1980 Maurice V.
    [Show full text]