The Technical and Social History of Software Engineering

The Technical and Social History of Software Engineering
Author: Capers Jones
Publisher: Pearson Education
Total Pages: 488
Release: 2014
Genre: Computers
ISBN: 0321903420


Download The Technical and Social History of Software Engineering Book in PDF, Epub and Kindle

Pioneering software engineer Capers Jones has written the first and only definitive history of the entire software engineering industry. Drawing on his extraordinary vantage point as a leading practitioner for several decades, Jones reviews the entire history of IT and software engineering, assesses its impact on society, and previews its future. One decade at a time, Jones assesses emerging trends and companies, winners and losers, new technologies, methods, tools, languages, productivity/quality benchmarks, challenges, risks, professional societies, and more. He quantifies both beneficial and harmful software inventions; accurately estimates the size of both the US and global software industries; and takes on "unexplained mysteries" such as why and how programming languages gain and lose popularity.

Software

Software
Author: Kim W. Tracy
Publisher: Morgan & Claypool
Total Pages: 358
Release: 2021-09-20
Genre: Computers
ISBN: 1450387276


Download Software Book in PDF, Epub and Kindle

Software history has a deep impact on current software designers, computer scientists, and technologists. System constraints imposed in the past and the designs that responded to them are often unknown or poorly understood by students and practitioners, yet modern software systems often include “old” software and “historical” programming techniques. This work looks at software history through specific software areas to develop student-consumable practices, design principles, lessons learned, and trends useful in current and future software design. It also exposes key areas that are widely used in modern software, yet infrequently taught in computing programs. Written as a textbook, this book uses specific cases from the past and present to explore the impact of software trends and techniques. Building on concepts from the history of science and technology, software history examines such areas as fundamentals, operating systems, programming languages, programming environments, networking, and databases. These topics are covered from their earliest beginnings to their modern variants. There are focused case studies on UNIX, APL, SAGE, GNU Emacs, Autoflow, internet protocols, System R, and others. Extensive problems and suggested projects enable readers to deeply delve into the history of software in areas that interest them most.

Software Engineering at Google

Software Engineering at Google
Author: Titus Winters
Publisher: O'Reilly Media
Total Pages: 602
Release: 2020-02-28
Genre: Computers
ISBN: 1492082767


Download Software Engineering at Google Book in PDF, Epub and Kindle

Today, software engineers need to know not only how to program effectively but also how to develop proper engineering practices to make their codebase sustainable and healthy. This book emphasizes this difference between programming and software engineering. How can software engineers manage a living codebase that evolves and responds to changing requirements and demands over the length of its life? Based on their experience at Google, software engineers Titus Winters and Hyrum Wright, along with technical writer Tom Manshreck, present a candid and insightful look at how some of the world’s leading practitioners construct and maintain software. This book covers Google’s unique engineering culture, processes, and tools and how these aspects contribute to the effectiveness of an engineering organization. You’ll explore three fundamental principles that software organizations should keep in mind when designing, architecting, writing, and maintaining code: How time affects the sustainability of software and how to make your code resilient over time How scale affects the viability of software practices within an engineering organization What trade-offs a typical engineer needs to make when evaluating design and development decisions

The Computer Boys Take Over

The Computer Boys Take Over
Author: Nathan L. Ensmenger
Publisher: MIT Press
Total Pages: 331
Release: 2012-08-24
Genre: Computers
ISBN: 0262302829


Download The Computer Boys Take Over Book in PDF, Epub and Kindle

The contentious history of the computer programmers who developed the software that made the computer revolution possible. This is a book about the computer revolution of the mid-twentieth century and the people who made it possible. Unlike most histories of computing, it is not a book about machines, inventors, or entrepreneurs. Instead, it tells the story of the vast but largely anonymous legions of computer specialists—programmers, systems analysts, and other software developers—who transformed the electronic computer from a scientific curiosity into the defining technology of the modern era. As the systems that they built became increasingly powerful and ubiquitous, these specialists became the focus of a series of critiques of the social and organizational impact of electronic computing. To many of their contemporaries, it seemed the “computer boys” were taking over, not just in the corporate setting, but also in government, politics, and society in general. In The Computer Boys Take Over, Nathan Ensmenger traces the rise to power of the computer expert in modern American society. His rich and nuanced portrayal of the men and women (a surprising number of the “computer boys” were, in fact, female) who built their careers around the novel technology of electronic computing explores issues of power, identity, and expertise that have only become more significant in our increasingly computerized society. In his recasting of the drama of the computer revolution through the eyes of its principle revolutionaries, Ensmenger reminds us that the computerization of modern society was not an inevitable process driven by impersonal technological or economic imperatives, but was rather a creative, contentious, and above all, fundamentally human development.

Creating a Software Engineering Culture

Creating a Software Engineering Culture
Author: Karl E. Wiegers
Publisher: Addison-Wesley
Total Pages: 580
Release: 2013-07-15
Genre: Computers
ISBN: 0133489299


Download Creating a Software Engineering Culture Book in PDF, Epub and Kindle

This is the digital version of the printed book (Copyright © 1996). Written in a remarkably clear style, Creating a Software Engineering Culture presents a comprehensive approach to improving the quality and effectiveness of the software development process. In twenty chapters spread over six parts, Wiegers promotes the tactical changes required to support process improvement and high-quality software development. Throughout the text, Wiegers identifies scores of culture builders and culture killers, and he offers a wealth of references to resources for the software engineer, including seminars, conferences, publications, videos, and on-line information. With case studies on process improvement and software metrics programs and an entire part on action planning (called “What to Do on Monday”), this practical book guides the reader in applying the concepts to real life. Topics include software culture concepts, team behaviors, the five dimensions of a software project, recognizing achievements, optimizing customer involvement, the project champion model, tools for sharing the vision, requirements traceability matrices, the capability maturity model, action planning, testing, inspections, metrics-based project estimation, the cost of quality, and much more! Principles from Part 1 Never let your boss or your customer talk you into doing a bad job. People need to feel the work they do is appreciated. Ongoing education is every team member’s responsibility. Customer involvement is the most critical factor in software quality. Your greatest challenge is sharing the vision of the final product with the customer. Continual improvement of your software development process is both possible and essential. Written software development procedures can help build a shared culture of best practices. Quality is the top priority; long-term productivity is a natural consequence of high quality. Strive to have a peer, rather than a customer, find a defect. A key to software quality is to iterate many times on all development steps except coding: Do this once. Managing bug reports and change requests is essential to controlling quality and maintenance. If you measure what you do, you can learn to do it better. You can’t change everything at once. Identify those changes that will yield the greatest benefits, and begin to implement them next Monday. Do what makes sense; don’t resort to dogma.

The Future of Software Engineering

The Future of Software Engineering
Author: Sebastian Nanz
Publisher: Springer Science & Business Media
Total Pages: 191
Release: 2010-10-20
Genre: Computers
ISBN: 3642151876


Download The Future of Software Engineering Book in PDF, Epub and Kindle

This book focuses on defining the achievements of software engineering in the past decades and showcasing visions for the future. It features a collection of articles by some of the most prominent researchers and technologists who have shaped the field: Barry Boehm, Manfred Broy, Patrick Cousot, Erich Gamma, Yuri Gurevich, Tony Hoare, Michael A. Jackson, Rustan Leino, David L. Parnas, Dieter Rombach, Joseph Sifakis, Niklaus Wirth, Pamela Zave, and Andreas Zeller. The contributed articles reflect the authors‘ individual views on what constitutes the most important issues facing software development. Both research- and technology-oriented contributions are included. The book provides at the same time a record of a symposium held at ETH Zurich on the occasion of Bertrand Meyer‘s 60th birthday.

Computer Games and Software Engineering

Computer Games and Software Engineering
Author: Kendra M. L. Cooper
Publisher: CRC Press
Total Pages: 304
Release: 2015-05-08
Genre: Computers
ISBN: 1482226693


Download Computer Games and Software Engineering Book in PDF, Epub and Kindle

Computer games represent a significant software application domain for innovative research in software engineering techniques and technologies. Game developers, whether focusing on entertainment-market opportunities or game-based applications in non-entertainment domains, thus share a common interest with software engineers and developers on how to

The Problem with Software

The Problem with Software
Author: Adam Barr
Publisher: MIT Press
Total Pages: 317
Release: 2018-10-23
Genre: Computers
ISBN: 0262348217


Download The Problem with Software Book in PDF, Epub and Kindle

An industry insider explains why there is so much bad software—and why academia doesn't teach programmers what industry wants them to know. Why is software so prone to bugs? So vulnerable to viruses? Why are software products so often delayed, or even canceled? Is software development really hard, or are software developers just not that good at it? In The Problem with Software, Adam Barr examines the proliferation of bad software, explains what causes it, and offers some suggestions on how to improve the situation. For one thing, Barr points out, academia doesn't teach programmers what they actually need to know to do their jobs: how to work in a team to create code that works reliably and can be maintained by somebody other than the original authors. As the size and complexity of commercial software have grown, the gap between academic computer science and industry has widened. It's an open secret that there is little engineering in software engineering, which continues to rely not on codified scientific knowledge but on intuition and experience. Barr, who worked as a programmer for more than twenty years, describes how the industry has evolved, from the era of mainframes and Fortran to today's embrace of the cloud. He explains bugs and why software has so many of them, and why today's interconnected computers offer fertile ground for viruses and worms. The difference between good and bad software can be a single line of code, and Barr includes code to illustrate the consequences of seemingly inconsequential choices by programmers. Looking to the future, Barr writes that the best prospect for improving software engineering is the move to the cloud. When software is a service and not a product, companies will have more incentive to make it good rather than “good enough to ship."

A Brief History of Computing

A Brief History of Computing
Author: Gerard O'Regan
Publisher: Springer Nature
Total Pages: 359
Release: 2021-04-28
Genre: Computers
ISBN: 3030665992


Download A Brief History of Computing Book in PDF, Epub and Kindle

This lively and fascinating text traces the key developments in computation – from 3000 B.C. to the present day – in an easy-to-follow and concise manner. Topics and features: ideal for self-study, offering many pedagogical features such as chapter-opening key topics, chapter introductions and summaries, exercises, and a glossary; presents detailed information on major figures in computing, such as Boole, Babbage, Shannon, Turing, Zuse and Von Neumann; discusses the earliest computers developed in the United States, Germany and Britain; discusses the development of the IBM 360 family of computers and its importance; discusses the invention of the transistor and integrated circuit; discusses the birth of the software industry and the evolution of human-computer interaction; reviews the history of programming languages, operating systems and software engineering; discusses the progress of artificial intelligence; discusses the invention of the microprocessor and the development of home and personal computers; examines the impact on society of the introduction of the personal computer, the World Wide Web, and the development of mobile phone technology; discusses smart phones and social media and the challenge of fake news; reviews a miscellany of innovations in the computing field such as cloud computing, the Internet of Things, and Quantum Computing; discusses legal aspects of computing and the professional responsibilities of computer professionals.

Experimentation in Software Engineering

Experimentation in Software Engineering
Author: Claes Wohlin
Publisher: Springer Science & Business Media
Total Pages: 249
Release: 2012-06-16
Genre: Computers
ISBN: 3642290442


Download Experimentation in Software Engineering Book in PDF, Epub and Kindle

Like other sciences and engineering disciplines, software engineering requires a cycle of model building, experimentation, and learning. Experiments are valuable tools for all software engineers who are involved in evaluating and choosing between different methods, techniques, languages and tools. The purpose of Experimentation in Software Engineering is to introduce students, teachers, researchers, and practitioners to empirical studies in software engineering, using controlled experiments. The introduction to experimentation is provided through a process perspective, and the focus is on the steps that we have to go through to perform an experiment. The book is divided into three parts. The first part provides a background of theories and methods used in experimentation. Part II then devotes one chapter to each of the five experiment steps: scoping, planning, execution, analysis, and result presentation. Part III completes the presentation with two examples. Assignments and statistical material are provided in appendixes. Overall the book provides indispensable information regarding empirical studies in particular for experiments, but also for case studies, systematic literature reviews, and surveys. It is a revision of the authors’ book, which was published in 2000. In addition, substantial new material, e.g. concerning systematic literature reviews and case study research, is introduced. The book is self-contained and it is suitable as a course book in undergraduate or graduate studies where the need for empirical studies in software engineering is stressed. Exercises and assignments are included to combine the more theoretical material with practical aspects. Researchers will also benefit from the book, learning more about how to conduct empirical studies, and likewise practitioners may use it as a “cookbook” when evaluating new methods or techniques before implementing them in their organization.