Home > Store > Software Development & Management > Management: Lifecycle, Project, Team

Software Leadership: A Guide to Successful Software Development

Register your product to gain access to bonus material or receive a coupon.

Software Leadership: A Guide to Successful Software Development


  • Your Price: $23.99
  • List Price: $29.99
  • Usually ships in 24 hours.


  • Copyright 2002
  • Dimensions: 7-3/8x9-1/4
  • Pages: 224
  • Edition: 1st
  • Book
  • ISBN-10: 0-201-70044-1
  • ISBN-13: 978-0-201-70044-2

"This book will help you not become a "Pointy Hair Manager." It will give you enough insight into the nature of software, the development process, and the techniques and tools used, so that you can intelligently reason about development and adjust, plan, replan, manage risks, and lead a team to success; not just document and record their failure."
--From the Foreword by Philippe Kruchten, Rational Fellow, Rational Software Canada

Together, a high demand for productive software development teams and a company's call for superior software have made seasoned professionals invaluable assets to software organizations. New managers must quickly become familiar with the key skills required by the needs of the position, and seasoned professionals must learn new methods of team organization to cope with the shorter length of the development cycle. Software Leadership: A Guide to Successful Software Development provides sound, practical guidance on how to be a good manager and how to build a competitive software team. This book is for the manager with little software background, as well as the seasoned software professional.

Based on the author's extensive professional experience, the book is a concise and straightforward overview of what he has found that every competent team leader absolutely has to know and practice. The following topics, which a successful leader must understand, are covered in detail:

  • Software quality
  • Effective development practices
  • Team dynamics
  • Appropriate leadership style

This book will show you how to lead your team toward the delivery of timely and cost-effective software, and teach you how to lead a modern software development project or organization.


Sample Content

Online Sample Chapter

Mental Models for Approaching Software Projects

Downloadable Sample Chapter

Click below for Sample Chapter related to this title:

Table of Contents



1. Quality Software.

2. Software Architecture.

3. The Software Project.

4. Software Development Productivity.

5. The Rational Unified Process.

6. Leadership and Management.

Appendix: Three Failed Approaches to Software Development. 0201700441T09252001


I wrote this book mostly out of frustration. In my experience as a Senior Consultant in Rational Software's Strategic Services Organization, I find that software development is a dismal process for many organizations. Yet, from experience as a development manager and technical lead, I know it need not be so. In most instances, the problem may be traced to an inappropriate leadership approach. The frustration springs from knowing that this problem can be fixed.

Several books and articles focus on how badly software development is managed. It is not my intent to add to that literature, but to bring the reader the good news: Much has been learned about leading software organizations in the last four decades. By applying these lessons, the reader can become a much better leader (and follower) in any organization that develops software.

One reason I wrote this book is that I see an increasing need for software leadership skills. Not only is the software business continuing to grow, but also many firms in other sectors are coming to realize that an increasing amount of the value they deliver is in their software. Consider, for example, the design of medical ultrasound imaging machines, the instruments that are used to visualize fetuses in the womb. There are two design approaches:

  • Hardware-centric--An old-line provider of medical instruments markets a piece of ultrasound equipment that is about the size of a writing desk and the weight of a small piano. It consists of a great deal of special hardware, not only to generate and receive the sound waves, but also to process the signals and generate the graphics. This instrument is expensive to manufacture and hard to maintain and upgrade.
  • Software-centric--An small upstart competitor realized that it is possible to build an ultrasound imaging system out of off-the-shelf hardware: ASICs (programmable microchips), a Microsoft operating system, some transducers and receivers, liquid crystal displays, and the like. To bring an instrument to market, the upstart needed some industrial design to layout the buttons and dials, and to create a great deal of proprietary software. The upstart can bring a portable version, about 5.4 lb, to market for less than half the price of the old-line instrument and enjoy a large margin. If their software is well designed, their product will be more maintainable and expandable than the older system. The upstart's portable unit received government approval in March 1999 and in the first nine months of 2000 had revenues of $25M up from $745k from the previous year. They have not displaced the old-line company, but they have their attention. To stay competitive in the medical instruments, the old-line instrument manufacturer finds itself in the software business.

This phenomenon of hardware firms realizing that the value of their products is in their software is widespread. Automotive systems (all of those black boxes and engine controllers under the hood), telephone equipment (central office switches, cell phones), toys, entertainment devices, and almost everything else are affected by this. I once had lunch with a manager of a division of a large tier-1 automobile parts supplier. His division makes automobile seats. I asked him what is his biggest problem. He answered it is the software that controls the high-end seats that is supposed to remember various driver preferences.

Who Should Read This Book

While writing the book, I had three kinds of readers in mind; each might approach the book differently:

  • Line managers, especially those whose background is not in software development, but some other discipline such as engineering, product marketing, or general management.
  • Experienced software managers who are looking for more ways to make their organization more competitive.
  • Technical staff who are also leaders, interested in becoming leaders, or just in being led better.

Readers with a technical background will gain a new perspective of a familiar landscape. They may gain a better idea of how to provide technical leadership and what to expect from their leaders. Line managers will gain new insights and perhaps find some new, more effective ways of providing leadership. Software project managers and team leaders may gain a new perspective on how to do their jobs better.


The content of the book is based on the premise that a competent software development leader should have a good understanding of software quality, the most effective development practices, team dynamics, and the appropriate leadership style. Following the premise, I organized the book into the following sections.

  • The Introduction provides background material on the state of the software development today and defines the success criteria for a software development effort.
  • Chapter 1, Quality Software, provides a view of the product your team must develop and deliver. It contains insights into the attributes of quality software and introduces some steps you can take to make sure that quality is delivered. It discusses why delivering quality is both free and a matter of survival.
  • Chapter 2, Software Architecture, is an overview of how software design is specified. It briefly describes the different views of software design, as well as their purposes and their roles in achieving quality. After reading this chapter, you will not be an architect but you will be able to ask intelligent questions about architecture.
  • Chapter 3, The Software Project, gives the big picture. It suggests that developing software is much like product development, and that much can be learned from that field's experience. Topics include an understanding of the problem solving nature of the development project. Further software development is inherently nonlinear and this nonlinearity has profound implications for leading the project. The chapter delineates the key considerations of software leadership that are the framework for understanding the rest of the book.
  • Chapter 4, Software Development Productivity, introduces a conceptual model of software productivity with three approaches for improving your organization's ability to deliver on its development commitments. The approaches form the basis of the modern software development practices discussed in Chapters 5 and 6.
  • Chapter 5, The Rational Unified Process, introduces the modern best practices of software development project management. In addition, the chapter provides guidance on how to organize your software development projects. Chapter 5 explains how to determine the right amount of process and provides an important perspective on reuse.
  • Chapter 6, Leadership and Management, describes the leadership style best suited in an organization that follows the principles and processes introduced in the earlier chapters. It explains the sort of leadership needed from the line and project managers. In particular, the software development manager's role as an involved, constructive member of the development team. Making and meeting commitments in the face of uncertainty is explored.
  • The Appendix, Common Leadership Errors, is based on industry experience. It provides a perspective on why many of the common approaches to software development fail and presents some important lessons on what not to do.

Throughout every chapter, there is a focus on the implications of the material to the leadership tasks.

While I recommend everyone read all of the material, for some readers, some chapters will provide more value than others. Chapters 1 and 2 are about software itself. These chapters will be especially helpful to those who lack technical background. Chapters 3 through 5 provide an understanding of the development process. People familiar with the material in the earlier chapters, but new to management, will especially benefit from these chapters. However, this material will also be of use to many experienced managers who are interested in improving the competitive stance of their organization. Chapter 6 should be of interest to all readers.

Let me tell you about the appendix. I have decided to include the material in the hope that many readers will recognize one or more of the errors in their own leadership approach and decide to try something different.

This book is intentionally brief, focusing on the big picture. Many of the topics mentioned in the book warrant books in themselves. I provide many excellent references for the readers who desire a deeper understanding.



Submit Errata

More Information

Unlimited one-month access with your purchase
Free Safari Membership