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

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.

Social Software Engineering

Social Software Engineering
Author: Jessica Keyes
Publisher: Auerbach Publications
Total Pages: 0
Release: 2011-09-22
Genre: Computers
ISBN: 9781439853757

Although the precepts of software engineering have been around for decades, the field has failed to keep pace with rapid advancements in computer hardware and software. Modern systems that integrate multiple platforms and architectures, along with the collaborative nature of users who expect an instantaneous global reach via the Internet, require updated software engineering methods. Social Software Engineering: Development and Collaboration with Social Networking examines the field through the spectrum of the social activities that now compose it. Supplying an up-to-date look at this ever-evolving field, it provides comprehensive coverage that includes security, legal, and privacy issues in addition to workflow and people issues. Jessica Keyes, former managing director of R&D for the New York Stock Exchange and noted columnist, correspondent, and author with more than 200 articles published, details the methodology needed to bring mission-critical software projects to successful conclusions. She provides readers with the understanding and tools required to fuse psychology, sociology, mathematics, and the principles of knowledge engineering to develop infrastructures capable of supporting the collaborative applications that today’s users require.

Social Software Engineering

Social Software Engineering
Author: Jessica Keyes
Publisher: CRC Press
Total Pages: 481
Release: 2016-04-19
Genre: Computers
ISBN: 1439853762

Although the precepts of software engineering have been around for decades, the field has failed to keep pace with rapid advancements in computer hardware and software. Modern systems that integrate multiple platforms and architectures, along with the collaborative nature of users who expect an instantaneous global reach via the Internet, require u

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

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

Collaborative Software Engineering

Collaborative Software Engineering
Author: Ivan Mistrík
Publisher: Springer Science & Business Media
Total Pages: 422
Release: 2010-03-10
Genre: Computers
ISBN: 3642102948

Collaboration among individuals – from users to developers – is central to modern software engineering. It takes many forms: joint activity to solve common problems, negotiation to resolve conflicts, creation of shared definitions, and both social and technical perspectives impacting all software development activity. The difficulties of collaboration are also well documented. The grand challenge is not only to ensure that developers in a team deliver effectively as individuals, but that the whole team delivers more than just the sum of its parts. The editors of this book have assembled an impressive selection of authors, who have contributed to an authoritative body of work tackling a wide range of issues in the field of collaborative software engineering. The resulting volume is divided into four parts, preceded by a general editorial chapter providing a more detailed review of the domain of collaborative software engineering. Part 1 is on "Characterizing Collaborative Software Engineering", Part 2 examines various "Tools and Techniques", Part 3 addresses organizational issues, and finally Part 4 contains four examples of "Emerging Issues in Collaborative Software Engineering". As a result, this book delivers a comprehensive state-of-the-art overview and empirical results for researchers in academia and industry in areas like software process management, empirical software engineering, and global software development. Practitioners working in this area will also appreciate the detailed descriptions and reports which can often be used as guidelines to improve their daily work.

The Responsible Software Engineer

The Responsible Software Engineer
Author: Colin Myers
Publisher: Springer
Total Pages: 380
Release: 1997
Genre: Computers
ISBN:

This volume provides workers in the industry with an overview of different approaches to professionalism. It focuses specifically on software engineering as a profession, covering issues such as the role of professional bodies, project management, user awareness, and standards recognition. It also takes account of general topics such as ethical and legal responsibilities, training and education. It includes contributions from leading researchers from a variety of backgrounds, including IBM UK, Imperial Cancer Research Fund, and the Department of Education and Employment. This is one of the first volumes to cover professionalism in software engineering at an advanced level. It is aimed primarily at practitioners and researchers in industry, particularly those working on professional development programs. It will also provide further reading for graduate and postgraduate students on software engineering courses.

Soft Skills

Soft Skills
Author: John Sonmez
Publisher:
Total Pages: 502
Release: 2020-11
Genre:
ISBN: 9780999081440

For most software developers, coding is the fun part. The hard bits are dealing with clients, peers, and managers and staying productive, achieving financial security, keeping yourself in shape, and finding true love. This book is here to help. Soft Skills: The Software Developer's Life Manual is a guide to a well-rounded, satisfying life as a technology professional. In it, developer and life coach John Sonmez offers advice to developers on important subjects like career and productivity, personal finance and investing, and even fitness and relationships. Arranged as a collection of 71 short chapters, this fun listen invites you to dip in wherever you like. A "Taking Action" section at the end of each chapter tells you how to get quick results. Soft Skills will help make you a better programmer, a more valuable employee, and a happier, healthier person.

Software Design X-Rays

Software Design X-Rays
Author: Adam Tornhill
Publisher: Pragmatic Bookshelf
Total Pages: 356
Release: 2018-03-08
Genre: Computers
ISBN: 1680505807

Are you working on a codebase where cost overruns, death marches, and heroic fights with legacy code monsters are the norm? Battle these adversaries with novel ways to identify and prioritize technical debt, based on behavioral data from how developers work with code. And that's just for starters. Because good code involves social design, as well as technical design, you can find surprising dependencies between people and code to resolve coordination bottlenecks among teams. Best of all, the techniques build on behavioral data that you already have: your version-control system. Join the fight for better code! Use statistics and data science to uncover both problematic code and the behavioral patterns of the developers who build your software. This combination gives you insights you can't get from the code alone. Use these insights to prioritize refactoring needs, measure their effect, find implicit dependencies between different modules, and automatically create knowledge maps of your system based on actual code contributions. In a radical, much-needed change from common practice, guide organizational decisions with objective data by measuring how well your development teams align with the software architecture. Discover a comprehensive set of practical analysis techniques based on version-control data, where each point is illustrated with a case study from a real-world codebase. Because the techniques are language neutral, you can apply them to your own code no matter what programming language you use. Guide organizational decisions with objective data by measuring how well your development teams align with the software architecture. Apply research findings from social psychology to software development, ensuring you get the tools you need to coach your organization towards better code. If you're an experienced programmer, software architect, or technical manager, you'll get a new perspective that will change how you work with code. What You Need: You don't have to install anything to follow along in the book. TThe case studies in the book use well-known open source projects hosted on GitHub. You'll use CodeScene, a free software analysis tool for open source projects, for the case studies. We also discuss alternative tooling options where they exist.

Social Thinking-Software Practice

Social Thinking-Software Practice
Author: Yvonne Dittrich
Publisher:
Total Pages: 493
Release: 2002
Genre: Computers
ISBN: 9780262271783

Software practice--which includes software development, design, and use--needs to go beyond the traditional engineering framework. Drawing on a variety of social theory approaches, this book focuses on interdisciplinary cooperation in software practice. The topics discussed include the facilitation of collaborative software development, communication between developers and users, and the embedding of software systems in organizations.

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

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.