Product Details
Head First Software Development

Head First Software Development
By Dan Pilone, Russ Miles

List Price: $49.99
Price: $31.49 & eligible for FREE Super Saver Shipping on orders over $25. Details

Availability: Usually ships in 24 hours
Ships from and sold by Amazon.com

55 new or used available from $14.49

Average customer review:

Product Description

Even the best developers have seen well-intentioned software projects fail -- often because the customer kept changing requirements, and end users didn't know how to use the software you developed. Instead of surrendering to these common problems, let Head First Software Development guide you through the best practices of software development. Before you know it, those failed projects will be a thing of the past. With its unique visually rich format, this book pulls together the hard lessons learned by expert software developers over the years. You'll gain essential information about each step of the software development lifecycle -- requirements, design, coding, testing, implementing, and maintenance -- and understand why and how different development processes work. This book is for you if you are: Tired of your customers assuming you're psychic. You'll learn not only how to get good requirements, but how to make sure you're always building the software that customers want (even when they're not sure themselves) Wondering when the other 15 programmers you need to get your project done on time are going to show up. You'll learn how some very simple scheduling and prioritizing will revolutionize your success rate in developing software. Confused about being rational, agile, or a tester. You'll learn not only about the various development methodologies out there, but how to choose a solution that's right for your project. Confused because the way you ran your last project worked so well, but failed miserably this time around. You'll learn how to tackle each project individually, combine lessons you've learned on previous projects with cutting-edge development techniques, and end up withgreat software on every project. Head First Software Development is here to help you learn in a way that your brain likes... and you'll have a blast along the way. Why pick up hundreds of boring books on the philosophy of this approach or the formal techniques required for that one? Stick with Head First Software Development, and your projects will succeed like never before. Go on, get started... you'll learn and have fun. We promise.


Product Details

  • Amazon Sales Rank: #20468 in Books
  • Published on: 2008-01-11
  • Original language: English
  • Number of items: 1
  • Binding: Paperback
  • 459 pages

Features


Editorial Reviews

About the Author

Dan Pilone is a Senior Software Architect with Blueprint Technologies, Inc. He has designed and implemented systems for Hughes, ARINC, UPS, and the Naval Research Laboratory. He also teaches project management, software design, and software engineering at The Catholic University in Washington D.C. Dan has written several books on software development, including "UML 2.0 in a Nutshell" (0-596-00795-7) and "UML 2.0 Pocket Reference" (0-596-10208-9), both O'Reilly.


Russ Miles is a senior consultant in SpringSource, the company behind Spring and Spring-WS. He is aligned with Spring-WS, contributing to and regularly delivering public training on Spring-WS. As part of his day job, he consults with major organizations on the best practices for developing services in order to take most advantage of applying a SOA. Russ has written three books for O'Reilly Media: AspectJ Cookbook, Learning UML 2.0, and Head First Software Development. He is currently gearing up to write The Definitive Guide to Spring for .NET for Apress alongside the writing activity for this book.


Customer Reviews

Modern, Lucid and Rational5
Since becoming a Development Manager, this is the first book I've made required reading for the team. Good software development is NOT common sense. When confronted with something as complex as a software project, people tend to respond with panic (which the book calls the Big Bang) or massive attempts at control (the Waterfall method).

HFSD preaches Iterative Development without all the dogma of Scrum or XP. It leaves the controversial stuff to other books, focusing on what good developers pretty much agree on. The practices are easily adopted and flexible, although like all worthwhile things in the world, they take a lifetime to master.

There's a lot to like about this book. The other Head First guides are good, but the style really, really fits the material here ... maybe because development is really less about technology than it is about working with others.

The Head First series scores again5
I've read and reviewed several of the "Head First" series of books on programming languages and software design, so I thought I would give this one a try too. Unlike so many books on software development, this one doesn't start with a terse and rather useless overview chapter. Instead it clearly tells you who this book is for: Those who have a background in programming, specifically Java, who want to learn techniques for building and delivering software. First the book explains the Head First concept in learning - using puzzles, cartoons, graphics, and anything else that should stick in your head to explain the usually dry topic of software engineering.

The first three chapters - "Great Software Development", "Gathering Requirements", and "Project Planning" - talk about how software development usually goes wrong and talks about some of the methods for organizing your efforts. Chapter 4 puts some of these ideas in motion when the book analyzes the development of a mythical application, iSwoon. The book has the application get into serious trouble and then shows you the way out of the abyss using good software design methodology. Next, the book has you adding features to "BeatBox Pro", which is an application from the "Head First Java" book. This is where your ability to understand Java code comes into play. The book also discusses the use and usefulness of the Ant build tool for Java projects. However, this is a book on how to approach the design of the software, not how to perform the detailed coding, so having somewhat rusty Java skills should be acceptable. Throughout the book are puzzles, Q&A sessions, and "There are no dumb question" sessions that really drive home the points being made. The following is the table of contents for the book:

1. Great Software Development
2. Gathering Requirements
3. Project Planning
4. User Stories and Tasks
5. Good-enough Design
6. Version Control
6.5 Building Your Code
7. Testing and Continuous Integration
8. Test-Driven Development
9. Ending an Iteration
10. The Next Iteration
11. Bugs
12. The Real World
Appendix A. Leftovers
Section A.1. #1. UML class diagrams
Section A.2. #2. Sequence diagrams
Section A.3. #3. User stories and use cases
Section A.4. #4. System tests vs. unit tests
Section A.5. #5. Refactoring
Appendix B. techniques and principles
Section B.1. Development Techniques
Section B.2. Development Principles

In summary I would highly recommend this book for someone looking for an approachable guide to software development. It will probably also help students enrolled in a course in software engineering since it makes clear and accessible a subject that usually gets bogged down in dry academic prose in the textbooks usually assigned for such classes.

"The" Guide to Agile Development5
Stop hacking together bad code, stop insane cost overruns and missed schedules. This great book in the terrific "Head First" series tells you how, in easy to understand ways, to use Agile Methodologies so you can stop hacking and 'programming' and start doing real product development. Produce quality software that meets the customer's requirements and do it on time and on budget. What a concept!

I have used these methodologies for several years at two Fortune 100 companies and these have been the most productive and personally satisfying years of my 32 years in software engineering.

There are lots of very precise, dry and boring academic books on agile methodologies and they are fine for a university class room, but if you are a practitioner and need to come up to speed on agile and make it work in the real world, this is the book. If you are familiar at all with the "Head First" series you know what to expect. If you are new to the "Head First" concept, suspend disbelief, read, do the exercises, laugh at the cartoons and soon you will find these folks have found the right way to teach new things to geeks and nerds like us.

If you learn nothing more than Test Driven Development, the book will pay for itself in terms of your time.

If you develop software for a living, you need this book. Period.