
Product Description
The more the software industry matures, the more it is accepted by the software engineering community that the people involved in software development processes deserve more attention than the processes or technologies themselves. To this end, Human Aspects of Software Engineering details software engineering from the perspective of those involved in the process: individuals, teams, customers, and the organization. The book is written for software engineering studen… More >>
Human Aspects of Software Engineering
Tags:
Aspects,
Engineering,
Human,
human aspects,
perspective,
Software,
software development processes,
software engineering community,
software industry
Related posts
- The Management of Engineering: Human, Quality, Organizational, Legal, and Ethical Aspects of Professional Practice
- The World Market for Original, Hand-Drawn Plans and Drawings for Architectural, Engineering, Industrial, Commercial, Topographical, or Similar Purposes: A 2004 Global Trade Perspective
- The History Channel Engineering Disasters Reviewing Five Different Engineering Disasters – Causes and Consequences : 9/11 Building 7 WTC , Love Canal Hooker Chemical Co Toxic Waste , Coconut Grove Boston Club Deadly Fire , Patriot Missile Software Error ,Providence Public Housing Demolition
- The Engineering of Software: A Technical Guide for the Individual
- Tenth Conference on Software Engineering Education & Training: April 13-16, 1997 Virginia Beach, Virginia
I was expecting to read about psychology and sociology as they apply to software development teams. Instead it’s a propaganda piece which purports to show how eXtreme Programming is the best way to write software because there’s more human interaction involved. So far I’ve learned that developers are happy to write documentation after the code is nearly complete, and that the development process works better when nobody owns any code. Other methodologies (RUP, Spiral) are only good to the extent that they’re like XP.
Note that I think XP has some good points, but every methodology needs to be looked at with a critical eye. This book seems to have been written by college professors who’ve never actually developed software for a living. It’s a weak, weak book.
ADDENDUM 19-SEPT-2007
It’s odd to see that a paid reviewer took the time to attack me for disliking the book three years ago. Now I feel obligated to defend myself for posterity, despite the fact that no one will ever read this.
For the record I remember being excited when this book was announced. I actually pre-ordered it. I was expecting a book that described people, personality traits, and how those personalities and traits interacted and responded to the various challenges of software development projects. I was looking for insight into what makes people tick and how I could use that knowledge to make my projects run more smoothly. I was expecting a book with a lot of information about psychology and sociology. You know; the “Human Aspects of Software Engineering” that the title promised.
Instead I got a book about why XP makes developers happier than traditional methodologies. The killer was the illustrative stories at the beginning, which contrast (I forgot the names long ago) Mt. Waterfall and his dull grey cubicle in his dull grey office full of dull grey people under a dull grey sky, vs Ms. Extreme in her happy colorful office with happy colorful workers and free candy. The argument was that Ms. Extreme was happier because her environment was better, but “nice offices, flex-time, and co-workers who are also friends make people happy” wasn’t the deep insight I was hoping for.
And I stand by my opinion that the writers of the book did not appear to have ever actually done what they were writing about. “40 years of experience” isn’t terribly significant when writing about a methodology that was only (publicly) five years old when the book was written. It certainly had the tone of somebody who has found a magical silver bullet but hasn’t yet tried to kill any werewolves with it.
Rating: 1 / 5
First, a truth-in-advertising disclaimer:
I was a reviewer paid by the publisher to review the book
prior to its publication. While my position is highly
favorable, I do not regard it as prejudiced or influenced
by the publisher’s payment. It was clearly understood
before I took the job that I could end up disliking the
book and that I was expected to report my opinion whatever
it turned out to be. Therefore, the opinion that I report
here was arrived at in the normal fair manner. I decided
that the book was good after reading it from beginning to
end, starting with a hope that the book would teach me
something. The book taught me plenty and was so well
written that I had difficulty putting the book down.
To give a flavor of the book, I give the table of contents:
Part I Software Development Environments
1 The Nature of Software Engineering (SE)
2 SE Methods (including Spiral Model, Unified Process, AND XP)
3 Working in Teams
4 Software as a Product
Part II The World of SE
5 Code of Ethics of SE
6 International Perspectives on SE
7 Different Perspectives on SE
8 The History of SE
Part III Software-Human Interaction
9 Program Comprehension, Code Inspections, and Refactoring
10 Learning Processes in SE
11 Abstraction and Other Heuristics of Software Development
12 Characteristics of Software and the Human Aspects of SE
Part IV Business Analysis of SE
13 Software Project Estimation and Tracking
14 Software as a Business
15 The Internet and the Human Aspects of SE
Part V SE Education
16 Case Studies in SE
17 Students’ Summary Projects and Presentations
18 Remarks about SE Education
19 Additional Information on Resources used in This Book
I like the coverage of the book. It includes all of the
subjects I would have thought relevant and then some. It’s
a great follow on to what was the first and until now the
ONLY book in the area, Ben Shneiderman’s _Psychology of
Computer Programming_. Moreover, it goes so much farther
than Ben’s book, as it should considering how long ago
Ben’s book was published. I really liked Tomayko and
Hazzan’s inclusion of ethical issues, the international
issues, the discussion of a variety methods from the
programmer’s point of view, the citation of empirical data,
the comparisons to other professions, the history of SE,
and the reflective practices idea.
My own history includes software development experiences,
participations in start ups, participation in the history
of SE, and participation in developing SE education. I
found the chapters on software development teams, software
as a product, international perspectives, the history of
SE, program comprehension and code inspections, software as
a business, and SE education particularly resonating.
The coverage is the correct completeness for a textbook. I
suppose that as a researcher concerned with these issues, I
would like to have seen more depth. However, I can see that
such depth is not appropriate for a text and not
appropriate for a practitioner who wants to just see the
issues and not how the research is carried out and not what
open issues need to be followed up on. However, on the
other side of the coin, their many study questions and
tasks point to this additional depth. Thus the interested
reader can begin to explore them on his own.
Each topic is treated quite thoroughly in that every issue
I can think of about the topics is covered either in their
explanations or in an question that they raise. Of course,
Tomayko and Hazzan do not answer the questions completely
in the book, leaving it to the reader or instructor to have
fun finding the answers.
I love the addition of the tasks for the reader. They got
me thinking. I think they belong where they are, because
then they come up at a time when it is most useful to think
about them. I like the whole approach.
The biggest strength of the book is that it is so engaging
that it is hard to only skim it. One ends up reading it,
and then it is very hard put it down. It is fun to read. It
is informative. It got me to think.
I might add that I simply cannot understand the review of
John Plemme. As one can see even by looking at only the
table of contents, so little of the book is about eXtreme
programming. As a matter of fact, what there is about XP is
not entirely supportive of the idea; it is a careful
discussion of the pros and cons supported by data that the
authors and others have found.
What Mr. Plemme has learned about when programmers are
happy to write documentation and code ownership seem to be
among observations that Tomayko and Hazzan make.
Finally, there is a discussion of the psychology and
sociology of software development teams in Chapter 3.
Did John Plemme read the same book that I did?
Moreover, I happen to know that one of these college
professor authors, namely Tomayko, has over 40 years of
industrial experience developing software, e.g., for a
large aerospace contractor. My view of this book is that
it’s a joint effort in which an education expert, Hazzan,
provides reflection on the hard-knocks experiences of a
software development expert who had become an excellent
software engineering professor.
Rating: 5 / 5