Vous voulez voir cette page en français ? Cliquez ici.


or
Sign in to turn on 1-Click ordering.
More Buying Choices
Have one to sell? Sell yours here
Professional Software Development: Shorter Schedules, Higher Quality Products, More Successful Projects, Enhanced Careers
 
See larger image
 

Professional Software Development: Shorter Schedules, Higher Quality Products, More Successful Projects, Enhanced Careers [Paperback]

Steve McConnell
4.0 out of 5 stars  See all reviews (14 customer reviews)
List Price: CDN$ 51.99
Price: CDN$ 32.75 & this item ships for FREE with Super Saver Shipping. Details
You Save: CDN$ 19.24 (37%)
o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o
Usually ships within 9 to 13 days.
Ships from and sold by Amazon.ca. Gift-wrap available.

Product Details


Product Description

Product Description

Renowned software expert Steve McConnell helps software students transition to the role of software professionals. Significant developments are afoot that will impact the future careers of student programmers, including initiatives in education, professional development, certification, and licensing. Some of these developments are well thought out and positive; others are being forced and need to be improved before they are standardized. Software development is changing, whether programmers recognize it or not. Programmers who are not paying attention could easily find themselves working as twenty-first century software janitors. This book describes the occupation of computer programming as it exists today and the profession of software engineering as it can exist in the future.

Excerpt. © Reprinted by permission. All rights reserved.

It looks obvious until you try it.
—IEEE Software

My flight was waiting on the runway when the captain made an announcement. "We've had some trouble with the plane's air conditioning system. In a plane, the air conditioner controls the oxygen levels so we need to make sure it's working before we can take off. Restarting the air conditioning unit hasn't worked, so we're going to power down the aircraft and power it back on. These modern airplanes are all computer controlled, you know, so they're not very reliable."

The pilot powered down the airplane, powered it back up—essentially, rebooted the airplane—and our flight continued without incident. Needless to say, I was especially glad to deplane at the end of that particular trip.

The Best of Times, the Worst of Times

The best software organizations control their projects to meet defined quality targets. They accurately predict software delivery dates months or years in advance. They deliver their software projects within budget, and their productivity is constantly improving. Their staff morale is high, and their customers are highly satisfied.

  • A telecom company needed to change about 3,000 lines of code in a code base of about 1 million lines of code. They made their changes so carefully that a year later no errors had been found in operation. Their total time to make the changes—including requirements analysis, design, construction, and testing--was 9 hours.
  • A team developing software for the United States Air Force committed to a one-year schedule and a $2 million budget even though other credible bids for the project had run as high as two years and $10 million. When the team delivered the project one month early, the project manager said the team's success arose from using techniques that have been known for years but that are rarely used in practice.
  • An aerospace company develops software for companies on a fixed-price basis. Three percent of its projects overrun their budgets; ninety-seven out of a hundred meet their targets.
  • An organization that committed to achieving outstanding quality attained an average of 39 percent reduction in its post-release defect rate every year for a period of 9 years—a cumulative reduction of 99 percent.
  • In addition to these notable successes, software pumps billions of dollars into the economy every year, both directly through sales of software itself and indirectly through improved efficiency and through creation of products and services that are made possible only with software's support.

    The practices needed to create good software have been well established and readily available for 10 to 20 years or more. Despite some amazing triumphs, however, the software industry is not living up to its full potential. There is a wide gulf between the average practice and the best, and many of the practices in widespread use are seriously outdated and underpowered. Performance of the average software project leaves much to be desired, as many well-known disasters will attest.

  • The IRS bumbled an $8 billion software modernization program that cost the United States taxpayers $50 billion per year in lost revenue.
  • The FAA's Advanced Automation System overran its planned budget by about $3 billion.
  • Problems with the baggage handling system caused a delay of more than a year in opening Denver International Airport. Estimates of the delay's cost ranged as high as $1.1 million per day.
  • The Ariane 5 rocket blew up on its maiden launch because of a software error.
  • The B-2 bomber wouldn't fly on its maiden flight because of a software problem.
  • Computer-controlled ferries in Seattle caused more than a dozen dock crashes, resulting in damage worth more than $7 million. The state of Washington recommended spending more than $3 million to change the ferries back to manual controls.
  • Many projects that are lower profile than these are equally troubled. Roughly 25 percent of all projects fail outright,12 and the typical project is 100 percent over budget at the point it's cancelled. Fifty percent of projects are delivered late, over budget, or with less functionality than desired.

    At the company level, these cancelled projects represent tremendous lost opportunity. If projects that are ultimately cancelled could be shut down at 10 percent of their intended budgets rather than 200 percent, imagine what a company could do by redirecting those resources at projects that were not ultimately cancelled.

    At the national level, cancelled projects represent prodigious economic waste. A rough calculation suggests that cancelled software projects currently impose about a $40 billion drain on the United States economy.

    When projects succeed, they can still present risks to the public safety or welfare. A project lead at Lotus received a call from a surgeon who was using a spreadsheet to analyze patient data during open-heart surgery. Newsweek magazine printed pictures of soldiers using Microsoft Excel on laptop computers to plan operations, and the Excel technical support team has received calls from the battlefield during active military operations.

    The Purpose of This Book

    Software development can be predictable, controllable, economical, and manageable. Software isn't usually developed that way, but it can be developed that way. This book is about the emerging profession of software engineering—and professional software practices that support economical creation of high-quality software.

    The essays in this book address questions like these:

  • What is software engineering?
  • How does software engineering relate to computer science?
  • Why isn't regular computer programming good enough?
  • Why do we need a profession of software engineering?
  • Why is engineering the best model for a software development profession?
  • In what ways do effective practices vary from project to project (or company to company), and in what ways are they usually the same?
  • What can organizations do to support a professional approach to software development?
  • What can individual software developers do to become full-fledged professionals?
  • What can the software industry as a whole do to create a true profession of software engineering?
  • How This Book Is Organized

    The parts in this book progress from looking at the trade of computer programming as it exists today to exploring the profession of software engineering as it might exist in the future.

    Part 1, The Software Tar Pit, explains how the software field got to be the way it is. There are many valid reasons why the software field came to its current state. Understanding those reasons should be used to accelerate, not delay, the changes needed to make successful projects an everyday habit.

    Part 2, Individual Professionalism, looks at the steps individuals can take on their own to achieve higher levels of software professionalism.

    Software projects are so complex that numerous key factors cannot be addressed effectively at the individual level. Part 3, Organizational Professionalism, digs into the organizational practices needed to support more professional software projects.

    Part 4, Industry Professionalism, examines steps that must be taken by the software industry at large to support professionalism at the individual and organizational levels.

    What I've Learned Since 1999

    Professional Software Development is an updated and significantly expanded edition of my 1999 book, After the Gold Rush. Since 1999, I've learned several lessons that are reflected in this new edition:

  • Licensing of software developers is more controversial than I expected. I still think that licensing a small percentage of software engineers is an important step toward protecting the general public's safety and welfare. I have tried to clarify that licensing is only one of many initiatives needed to improve the software development profession, and not the most important one.
  • Education of software engineers does not have to be tightly linked to licensing. Undergraduate and graduate educational programs can seek to instill an engineering mindset in software developers without necessarily preparing them to become licensed professional engineers. Indeed, if fewer than five percent of software developers are eventually licensed—which seems likely—targeting the majority of educational programs at licensing seems misguided.
  • The world didn't fall apart on January 1, 2000. Although I didn't think Y2K would be catastrophic, I did believe that Y2K-related problems would be more significant than they were. The software industry's repair efforts turned out to be far more effective than I expected. Beyond that, the Y2K problem itself was in some sense a result of successful software development practices. Y2K would not have been an issue in the first place if so many software systems had not survived longer than their originally expected lifespans.
  • Modern software development is truly impressive in many respects, and any comments about professionalizing the field of software development should account for software's numerous successes. We must be careful not to throw out the field's better practices as we try to strengthen the weaker ones.
  • Who Should Read This Book

    If you develop software for a living, this book will explore what you need to do to become a truly professional software developer.

    If you manage software projects, this book will summarize the differences between poorly run and well run software projects and overview what you can do to make your projects more successful.

    If you manage a software organization, this book will outline the benefits available from systematic approaches to software development and sketch what you need to do to realize those benefits.

    If you are a student who wants to work in the software field, this book will introduce you to...


    Tag this product

     (What's this?)
    Think of a tag as a keyword or label you consider is strongly related to this product.
    Tags will help all customers organize and find favorite items.
    Your tags: Add your first tag
     

    What Other Items Do Customers Buy After Viewing This Item?


     

    Customer Reviews

    14 Reviews
    5 star:
     (9)
    4 star:    (0)
    3 star:
     (2)
    2 star:
     (2)
    1 star:
     (1)
     
     
     
     
     
    Average Customer Review
    4.0 out of 5 stars (14 customer reviews)
     
     
     
     
    Share your thoughts with other customers:
    Most helpful customer reviews

    4 of 5 people found the following review helpful
    3.0 out of 5 stars Excellent Diagnosis, Questionable Solution., April 11 2004
    This review is from: Professional Software Development: Shorter Schedules, Higher Quality Products, More Successful Projects, Enhanced Careers (Paperback)
    As the author of the software's industry's classic tomes, "Code Complete" and "Rapid Development", anything by Steve McConnell is required reading. However, I believe that "Professional Software Development" along with its parent text, "After The Goldrush" is highly unlikely to have the impact of his earlier work.

    McConnell remains at his best when detailing the problems of the industry and few will argue with his call for the adoption of established best practices and the creation of a better-qualified, structured and more accountable profession. The contentious area is his attempt to base this profession on engineering; a discipline that many feel is not an appropriate metaphor for the distinct and unique task of producing software.

    Other industry authorities, in particular, Alan Cooper, have eloquently and convincingly denounced this view of software design and construction as engineering, and it seems to lead the author into some increasingly strange territory, for example his bizarre proposal that prospective software practitioners should study traditional engineering topics!

    In swimming against the tide of movements such as Cooper's Interaction Design, Fowler's Agile Development and Beck's Extreme Programming, I would suggest that McConnell's ideas on creating an engineering-based Profession, are unlikely to see widspread adoption outside of the large-scale developers of in-house, scientific applications.

    For all this, the book is still an interesting and stimulating read, but I suspect that many are still hoping that McConnell will return to his area of true expertise - the software construction process - and revise Code Complete to incorporate the latest methodologies and environments.

    Help other customers find the most helpful reviews 
    Was this review helpful to you? Yes No


    1 of 1 people found the following review helpful
    2.0 out of 5 stars Heavy on opinion, light on content, Dec 21 2003
    By 
    Lars Bergstrom "LarsBerg" (Chicago, IL) - See all my reviews
    (REAL NAME)   
    This review is from: Professional Software Development: Shorter Schedules, Higher Quality Products, More Successful Projects, Enhanced Careers (Paperback)
    The assessment of engineering, especially around how many people will be certified, leave nothing to argue with, though they're so forward-looking as to be somewhat irrelevant to a developer today. More interesting are his statements about running projects and professional development -- his company has the most compelling reward structure I've ever seen, and far outshadow's MSFT's baroque system.

    Unfortunately, the lack of *any* mention of Agile methodologies made this book look like either the author has been in Tahiti for the last few years or is trying to subtly discount them. Either way, you read it and say, "yes, this is exactly what Lean addresses; so what's your point?". It was also a little short on concrete recommendations, and comes off more as a position statement on where he'd like software development to be N years from now.

    I'm glad that I read it because I generally like McConnell's writing and like to hear different opinions on certification of software developers, but I can't say that I'd suggest anyone else bother.

    Help other customers find the most helpful reviews 
    Was this review helpful to you? Yes No


    2 of 3 people found the following review helpful
    5.0 out of 5 stars A Roadmap for Software Professionals, Feb 26 2004
    By 
    Derek Hofmann "traal" (San Diego, CA USA) - See all my reviews
    (REAL NAME)   
    This review is from: Professional Software Development: Shorter Schedules, Higher Quality Products, More Successful Projects, Enhanced Careers (Paperback)
    This is a book written for the software engineer/developer/programmer/analyst (collectively called "developers" in my review). The book basically acts as a roadmap for improving yourself as a developer, making yourself more valuable to your current and future employers (whether they realize it or not).

    This book introduced me to Steve McConnell's Professional Development Ladder, a way of evaluating your current level of professionalism and learning what areas of knowledge you need in order to progress. It also talks about software engineer licensing (Texas does it), the newly accredited Software Engineering degree program (this replaces Computer Science in many respects), and the Software Engineering Institute's Code of Ethics and Professional Practice.

    Many of these resources can be found around the Net, but this book neatly consolidates a lot of information. It also includes a lot of information (mainly statistics) I would not have found elsewhere, such as ROI's for specific software engineering practices (simply measuring productivity can return 150% in 12 months or 600% over 36 months, page 116), the exact makeup of the huge productivity gap between different developers (communication factors alone account for a 53% productivity difference, page 137), and an interesting and realistic diagram showing how professional licensing affects the pool of good and bad developers.

    The roadmap extends all the way from the entry-level developer or new high-school graduate all the way up to industry leadership.

    I give this book 5 stars not for the book alone but for it combined with the resources at McConnell's web site. If you want to excel in your field as a developer, these two taken together give a lot of great advice.

    Help other customers find the most helpful reviews 
    Was this review helpful to you? Yes No

    Share your thoughts with other customers: Create your own review
    Want to see more reviews on this item?
     Go to Amazon.com to see all 22 reviews  3.9 out of 5 stars 
     
     
    Most recent customer reviews











    Only search this product's reviews



    Listmania!

    Create a Listmania! list

    Look for similar items by category


    Look for similar items by subject


    Feedback


    Amazon.ca Privacy Statement Amazon.ca Shipping Information Amazon.ca Returns & Exchanges