Applied Software Project Management and over one million other books are available for Amazon Kindle . Learn more


or
Sign in to turn on 1-Click ordering.
or
Amazon Prime free trial required. Sign up when you check out. Learn more
More Buying Choices
Have one to sell? Sell yours here
or
Get a £4.45 Amazon.co.uk Gift Card
Applied Software Project Management
 
 
Start reading Applied Software Project Management on your Kindle in under a minute.

Don't have a Kindle? Get your Kindle here, or download a FREE Kindle Reading App.

Applied Software Project Management [Paperback]

Andrew Stellman , Jennifer Greene

RRP: £30.99
Price: £20.14 & this item Delivered FREE in the UK with Super Saver Delivery. See details and conditions
You Save: £10.85 (35%)
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
In stock.
Dispatched from and sold by Amazon.co.uk. Gift-wrap available.
Only 1 left in stock--order soon (more on the way).
Want guaranteed delivery by Monday, May 28? Choose Express delivery at checkout. See Details
‹  Return to Product Overview

Product Description

Product Description

"If you're looking for solid, easy-to-follow advice on estimation, requirements gathering, managing change, and more, you can stop now: this is the book for you." --Scott Berkun, Author of The Art of Project Management

What makes software projects succeed? It takes more than a good idea and a team of talented programmers. A project manager needs to know how to guide the team through the entire software project. There are common pitfalls that plague all software projects and rookie mistakes that are made repeatedly--sometimes by the same people! Avoiding these pitfalls is not hard, but it is not necessarily intuitive. Luckily, there are tried and true techniques that can help any project manager.

In Applied Software Project Management, Andrew Stellman and Jennifer Greene provide you with tools, techniques, and practices that you can use on your own projects right away. This book supplies you with the information you need to diagnose your team's situation and presents practical advice to help you achieve your goal of building better software.

Topics include:

  • Planning a software project
  • Helping a team estimate its workload
  • Building a schedule
  • Gathering software requirements and creating use cases
  • Improving programming with refactoring, unit testing, and version control
  • Managing an outsourced project
  • Testing software

Jennifer Greene and Andrew Stellman have been building software together since 1998. Andrew comes from a programming background and has managed teams of requirements analysts, designers, and developers. Jennifer has a testing background and has managed teams of architects, developers, and testers. She has led multiple large-scale outsourced projects. Between the two of them, they have managed every aspect of software development. They have worked in a wide range of industries, including finance, telecommunications, media, nonprofit, entertainment, natural-language processing, science, and academia. For more information about them and this book, visit http://www.stellman-greene.com.

From the Publisher

Whether you're starting a software project from scratch, or fixing an ailing one, this handy guide is your ticket to success. Written by a group of seasoned project managers, Applied Software Project Management provides essential project management tools, techniques, and practices-all designed to eliminate the frustrating cycle of releases and patches. Ideal for anyone on a project team.

About the Author

Jennifer Greene and Andrew Stellman have been building software together since 1998. Andrew comes from a programming background, and has managed teams of requirements analysts, designers and developers. Jennifer has a testing background, and has managed teams of architects, developers and testers. She has led multiple large-scale outsourced projects. Between the two of them, they have managed every aspect of software development. They formed Stellman & Greene Consulting in 2003, with a focus on project management, software development, management consulting and software process improvement. They have worked in a wide range of industries, including finance, telecommunications, media, non-profit, entertainment, natural language processing, science and academia. For more information about them and this book, visit http://www.stellman-greene.com.

Jennifer Greene has managed quality assurance teams at multiple software organizations. Her project experience spans many domains, including academic research, financial services and analysis, natural language processing and grants management. She has been responsible for leading process improvement efforts as well as implementing best practices in defect prevention. She is currently leading a major software test outsourcing effort for MicroEdge.

Excerpted from Applied Software Project Management by Andrew Stellman, Jennifer Greene. Copyright © 2005. Reprinted by permission. All rights reserved.

Chapter Three Estimation

Many people have referred to estimation as a “black art.”this makes some intuitive sense: at first glance,it might seem that estimation is a highly subjective process.One person might take a day to do a task that might only require a few hours of another ’s time. As a result, when several people are asked to estimate how long it might take to perform a task,they will often give widely differing answers.But when the work is actually performed,it takes a real amount of time;any estimate that did not come close to that actual time is inaccurate.

To someone who has never estimated a project in a structured way,estimation seems little more than attempting to predict the future.This view is reinforced when off-the-cuff estimates are inaccurate and projects come in late.But a good formal estimation process, one that allows the project team to reach a consensus on the estimates,can improve the accuracy of those estimates,making it much more likely that projects will come in on time.A project manager can help the team to create successful estimates for any software project by using sound techniques and understanding what makes estimates more accurate.

Elements of a Successful Estimate

A sound estimate starts with a work breakdown structure (WBS).A WBS is a list of tasks that,if completed,will produce the final product.The way the work is broken down dictates how it will be done.There are many ways to decompose a project into tasks. The project can be broken down by feature,by project phase (requirements tasks, design tasks, programming tasks,QA tasks,etc.),or by some combination of the two. Ideally,the WBS should reflect the way previous projects have been developed.

A useful rule of thumb is that any project can be broken down into between 10 and 20 tasks. For large projects (for example,a space shuttle),those tasks will be very large (“Test the guidance system ”);for small projects (like writing a simple calculator program),the tasks are small (“Build the arithmetic object that adds,multiplies,or divides two numbers ”).The team must take care in generating the WBS â€"if the tasks are incorrect,they can waste time going down a wrong path.

Once the WBS is created,the team must create an estimate of the effort required to perform each task.The most accurate estimates are those that rely on prior experience. Team members should review previous project results and find how long similar tasks in previous projects took to complete.Sources of delays in the past should be taken into account when making current estimates.Postmortem reports (see Chapter 8)are a good source of this information.

No estimate is guaranteed to be accurate.People get sick or leave the organization;teams run into unforeseen technical problems;the needs of the organization change.The unexpected will almost certainly happen.Therefore,the goal of estimation is not to predict thefuture.Instead,it is to gauge an honest,well-informed opinion of the effort required to do a task from those people in the organization who have the most applicable training and knowledge.

If two people widely disagree on how long a task will take,it ’s likely that the source of that disagreement is that each person made different assumptions about details of the work product or the strategy for producing it.In other words,any disagreement is generally about what is required to perform the task itself,not about the effort required to complete it.Forexample,given the same vision and scope document for a tool that sets the computer clock, two different developers might come up with wildly different estimates. But it might turn out that one developer assumed that the implementation would have a simple command-line interface,while the other assumed that there would be a complete user interface that had to integrate tightly with the operating system ’s control panel.By helping the programmers discuss these assumptions and come to a temporary resolution about their differences, the project manager can help them agree on a single estimate for the task.

A project manager can help the team create more accurate estimates by reducing the uncertainty about the project.The most effective way to do this is to do a thorough job creating a vision and scope document (see Chapter 2)â€"the more accurate and detailed it is,the more information the team has to work with when generating their estimate.The project manager can also ensure that the team has reached a consensus on the tasks that must be performed.Finally,the project manager can lead the team in a discussion of assumptions.

Assumptions Make Estimates More Accurate

Once the team has agreed upon a WBS,they can begin to discuss each task so they can come up with an estimate.At the outset of the project,the team members do not have all of the information they need in order to produce estimates;nevertheless,they need to come up with numbers.To deal with incomplete information,they must make assumptions aboutthe work to be done.By making assumptions,team members can leave placeholders for information that can be corrected later,in order to make the estimate more accurate.

For the estimates to be most effective,the assumptions must be written down. Important information is discovered during the discussion that the team will need to refer back to during the development process,and if that information is not written down, the teamwill have to have the discussion all over again.If an assumption turns out to be incorrect, the schedule will need to be adjusted;they will be able to point to the exact cause of the delay by showing that a documented assumption turned out to be incorrect.This will help the project manager explain any resulting schedule delay to others in the organization and avoid that source of delays in the future.The assumptions also provide a way to keep a record of team decisions,share those decisions with others,and find errors in their decisions.(The assumptions should be added to the “Assumptions ” section of the vision and scope document â€"see Chapter 2.)

‹  Return to Product Overview

Amazon.co.uk Privacy Statement Amazon.co.uk Delivery Information Amazon.co.uk Returns & Exchanges