Limit search to available items
Book Cover
Book
Author Tomayko, J. E. (James E.), 1949-

Title Human aspects of software engineering / James E. Tomayko, Orit Hazzan
Edition First edition
Published Hingham, Mass. : Charles River Media, [2004]
©2004

Copies

Location Call no. Vol. Availability
 W'PONDS  005.1 Tom/Hao  AVAILABLE
Description xxx, 338 pages : illustrations ; 25 cm
Series Charles River Media computer engineering series
Charles River Media computer engineering series.
Contents Machine derived contents note: Human Aspects of Software Engineering -- Orit Hazzan and James Tomayko -- Table of Contents -- Introduction -- Goals of the Book -- Rationale of the Book -- Scope of the Book -- Readership of the Book -- Structure of the Book -- Structure of Each Chapter -- How to Use this Book -- References -- Part I - Software Development Environments -- Chapter 1 The Nature of Software Engineering -- Introduction -- Objectives -- Study Questions -- A Day in the Life of a Software Engineer in a Conventional Company -- A Software Engineer's Day at an Agile Development Company -- Why Software Projects Fail -- For Further Review -- References -- Additional Resources -- Chapter 2 Software Engineering Methods -- Introduction -- Objectives -- Study Questions -- Software Development Methods -- Spiral Model -- Unified Process -- eXtreme Programming -- Choosing Among the Spiral Model, UP, and XP -- To Require Or Not to Require...Methods -- Summary Questions -- For Further Review -- References -- Chapter 3 Working in Teams -- Introduction -- Objectives -- Study Questions -- Relevance for Software Engineering -- Types and Structures of Software Development Teams -- Democratic Teams -- Hierarchical Teams -- Virtual Teams -- Forming and Rewarding Student Teams -- Forming Student Teams -- Evaluation of Student Projects -- A Game Theory Perspective of Teamwork -- Outsourcing -- The Bozo Effect -- Outsourcing -- Mind the Gap -- Summary Questions -- For Further Review -- References -- Additional Resources -- Chapter 4 Software as a Product -- Introduction -- Objectives -- Study Questions -- Relevance for Software Engineering -- Software Requirements - Background -- Data Collection Tools -- Interviews -- Questionnaires -- Observation -- Requirements Management -- Characteristics of Tools for Requirements Management -- Summary -- Summary Questions -- For Further Review -- References -- Part II - The World of Software Engineering -- Chapter 5 Code of Ethics of Software Engineering -- Introduction -- Objectives -- Study Questions -- Relevance for Software Engineering -- Codes of Ethics -- The Code of Ethics of Software Engineering -- Scanning the Code of Ethics of Software Engineering -- Conclusions -- Summary Questions -- For Further Review -- References -- Additional Resources -- Chapter 6 International Perspective on Software Engineering -- Introduction -- Objectives -- Study Questions -- Relevance for Software Engineering -- International Perspectives on Software Engineering -- The High-tech Industry in Different Countries -- India -- Israel -- Additional International Topics Related to Software Engineering -- Women and Minorities in Computer Science and Software Engineering -- Summary Questions -- For Further Review -- References -- Additional Resources -- Chapter 7 Different Perspectives on Software Engineering -- Introduction -- Objectives -- Study Questions -- Relevance for Software Engineering -- Software Engineering: A Multifaceted Field -- The product vs. process perspectives at software engineering -- The agility paradigm vs. the heavyweight approach towards software development -- Additional approaches -- Analogies to Other Professions -- Failure and Success of Software Projects -- Summary Questions -- For Further Review -- References -- Additional Resources -- Chapter 8 The History of Software Engineering -- Introduction -- Objectives -- Study Questions -- The Early Days of Computing -- Information Hiding- The First Budding of Software Development Methods -- Abstraction - Another Part of Methods -- The Beginning of Software Development Methods -- The Customer's Angle in the Early Days of Software Development Methods -- Abstraction and Information Hiding Come to the Fore -- Software Development Methods Become Part of the Profession of Software Engineering -- Objects Come to the Front -- Agile Methods Enter the Software Engineering World -- For Further Review -- References -- Additional Resources -- Part III - Software-Human Interaction -- Chapter 9 Program Comprehension, Code Inspections, and Refactoring -- Introduction -- Objectives -- Relevance for Software Engineering -- Program Comprehension -- Study Questions -- Theories of Program Comprehension -- Code Inspections (Code Review) -- Study Questions -- Refactoring -- Study Questions -- Summary Questions -- For Further Review -- References -- Additional Resources -- Chapter 10 Learning Processes in Software Engineering -- Introduction -- Objectives -- Study Questions -- Relevance for Software Engineering -- Software Engineering as a Reflective Practice -- Conclusion - Software Engineering as a Reflective Practice -- Learning Organizations -- Conclusions -- Summary Questions -- For Further Review -- References -- Additional Resources -- Chapter 11 Abstraction and Other Heuristics of Software Development -- Introduction -- Objectives -- Study Questions -- Relevance for Software Engineering -- Central Heuristics of Software Development -- Structured Programming -- Successive Refinement -- Abstraction -- Illumination of Previous Chapters by Abstraction -- Abstraction in Computer Science and Software Engineering Education -- Summary Questions -- For Further Review -- References -- Chapter 12 The Characteristics of Software and the Human Aspect of Software Engineering -- Introduction -- Objectives -- Study Questions -- Relevance for software engineering -- Software Characteristics -- Programming Style -- Abstraction -- Refactoring -- Simplicity -- Evaluation of Programming Style -- Affective aspects in human-software interaction -- Summary Questions -- For Further Review -- References -- Additional Resources -- Part IV - Business Analysis of Software Engineering -- Chapter 13 Software Project Estimation and Tracking -- Introduction -- Objectives -- Study Questions -- Relevance for Software Engineering -- Poor Software Project Management -- "Better, faster, cheaper" -- Overtime -- Avoiding Overtime -- Historical data -- Clark's Method -- Cocomo Ii -- Earned Value -- The Planning Game -- Requirements -- The Method of Up-Front Requirements Elicitation -- Requirements Elicitation in Agile Methods -- Difficulties for Estimation Caused by Agile Methods of Gathering Requirements -- The Team Software Process (TSP) Development Manager -- Playing Games with Estimates and Deadlines -- Summary question -- For Further Review -- References -- Chapter 14 Software as a Business -- Introduction -- Study Questions -- Relevance to Software Engineering -- A Brief History of the Software Business -- Time-to-Market -- Business Cases -- Business Plans -- Statement of Work (SOW) -- Summary Questions -- For Further Review -- Resources -- Additional Resources -- Chapter 15 The Internet and the Human Aspects of Software Engineering -- Introduction -- Objectives -- Study Questions -- Relevance for Software Engineering -- E-commerce -- What is E-commerce? -- Cognitive Analysis of E-commerce -- Metaphors in E-commerce -- Hypertext and E-commerce -- Social Perspective of E-commerce -- On-line Communication -- The Timeless Nature of the Internet -- Communication -- Summary Questions -- For Further Review -- References -- Additional resources -- Part V - Software Engineering Education -- Chapter 16 Case Studies of Software Engineering -- Introduction -- Objectives -- Study Questions -- Relevance for Software Engineering -- Software Development Paradigm -- General Principles -- For Further Review -- Resources -- Chapter 17 Students' Summary Projects and Presentations -- Introduction -- Objectives -- Study Questions -- Relevance for Software Engineering -- Case studies -- Construction of Case Studies -- Option 1 - Construction of a Theoretical Case Study -- Option 2 - Construction of Case Studies based on a Field Study -- Option 3 - Construction of Case Studies based on an Event that Happened in the Past -- Presentation of Case Studies -- Additional resources -- Chapter 18 Remarks about Software Engineering Education -- Introduction -- Objectives -- Study Questions -- Relevance for Software Engineering -- The History of Software Engineering Education -- The Education of Software Engineers Today -- Teaching Human Aspects of Software Engineering -- References -- Additional Resources -- Chapter 19 Additional Information on Resources Used in the Book -- Books -- Articles -- Websites -- Appendix - Course Slides
Summary This book details software engineering from the perspective of those involved in the process: individuals, teams, customers, and the organization. It is written for software engineering students and professional software developers. It illustrates the richness and complexity of the human aspects of software engineering and covers the problems, questions and conflicts that arise during development
Bibliography Includes bibliographical references and index
Subject Software engineering.
Human engineering.
Author Hazzan, Orit, 1962-
LC no. 2004006047
ISBN 1584503130 hardcover alkaline paper