Welcome to Scribd, the world's digital library. Read, publish, and share books and documents. See more
Buy Now $39.99
Standard view
Full view
of .
Look up keyword or section
Like this
20Activity

Table Of Contents

Big bang development usually ends up in a BIG MESS
Your software isn’t complete until it’s been RELEASED
Orion’s Orbits is modernizing
Talk to your customer to get MORE information
Bluesky with your customer
Sometimes your bluesky session looks like this
Find out what people REALLY do
Your requirements must be CUSTOMER-oriented
Develop your requirements with customer feedback
Cubicle conversation
Playing planning poker
Put assumptions on trial for their lives
A BIG user story estimate is a BAD user story estimate
The goal is convergence
The requirement to estimate iteration cycle
Customers want their software NOW!
Prioritize with the customer
We know what’s in Milestone 1.0 (well, maybe)
If the features don’t fit, reprioritize
More people sometimes means diminishing returns
Work your way to a reasonable Milestone 1.0
Iterations should be short and sweet
Comparing your plan to reality
Velocity accounts for overhead in your estimates
How to ruin your team’s lives
Introducing iSwoon
Do your tasks add up?
Plot just the work you have left
Add your tasks to your board
Start working on your tasks
A task is only in progress when it’s IN PROGRESS
What if I’m working on two things at once?
Your first standup meeting
You have to track unplanned tasks
Unexpected tasks raise your burn-down rate
Velocity helps, but
We have a lot to do
...but we know EXACTLY where we stand
Velocity Exposed
You’ve got a new contract—BeatBox Pro
And now the GUI work
Demo the new BeatBox for the customer
Let’s start with VERSION CONTROL
First set up your project
...then you can check code in and out
Most version control tools will try and solve problems for you
The server tries to MERGE your changes
If your software can’t merge the changes, it issues a conflict
More iterations, more stories
We have more than one version of our software
Good commit messages make finding older software easier
Now you can check out Version 1.0
(Emergency) standup meeting
Tag your versions
Tools for your Software Development Toolbox
Things will ALWAYS go wrong
There are three ways to look at your system
Black-box testing focuses on INPUT and OUTPUT
Grey-box testing gets you CLOSER to the code
White-box testing uses inside knowledge
Testing EVERYTHING with one step
Automate your tests with a testing framework
Use your framework to run your tests
At the wheel of CI with CruiseControl
Testing guarantees things will work... right?
Testing all your code means testing EVERY BRANCH
Use a coverage report to see what’s covered
Getting good coverage isn’t always easy
Test FIRST, not last
So we’re going to test FIRST
Welcome to test-driven development
Your first test
...fails miserably
Get your tests to GREEN
Red, green, refactor
In TDD, tests DRIVE your implementation
When your tests pass, move on!
Simplicity means avoiding dependencies
Always write testable code
When things get hard to test, examine your design
Keep your test code with your tests
Testing produces better code
Strategy patterns, loose couplings, object stand ins
We need lots of different, but similar, objects
What if we generated objects?
A mock object stands in for real objects
Mock objects are working object stand-ins
Good software is testable
It’s not easy bein’ green
A day in the life of a test-driven developer
Your iteration is just about complete
System testing MUST be done
System testing depends on a complete system to test
Good system testing requires TWO iteration cycles
More iterations means more problems
The life (and death) of a bug
So you found a bug
Anatomy of a bug report
But there’s still plenty left you COULD do
Time for the iteration review
Some iteration review questions
A GENERAL priority list for getting EXTRA things done
Squashing bugs like a pro
First, you’ve got to talk to the customer
Priority one: get things buildable
We could fix code
Figure out what functionality works
What would you do?
Spike test to estimate
What do the spike test results tell you?
Your team’s gut feeling matters
Give your customer the bug fix estimate
Things are looking good
AND the customer is happy
P. 1
Head First Software Development

Head First Software Development

Ratings:

4.6

(1)
|Views: 1,722|Likes:

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 with great 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.

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 with great 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.

More info:

Publish date: Dec 20, 2007
Added to Scribd: May 16, 2009
Copyright:Traditional Copyright: All rights reservedISBN:9780596800840
List Price: $39.99 Buy Now

Availability:

Read on Scribd mobile: iPhone, iPad and Android.
This book can be read on up to 6 mobile devices.
Buy the full version from:Amazon
See more
See less

04/07/2015

497

9780596800840

$39.99

USD

You're Reading a Free Preview
Pages 20 to 127 are not shown in this preview.
You're Reading a Free Preview
Pages 147 to 161 are not shown in this preview.
You're Reading a Free Preview
Pages 181 to 197 are not shown in this preview.
You're Reading a Free Preview
Pages 217 to 243 are not shown in this preview.
You're Reading a Free Preview
Pages 263 to 497 are not shown in this preview.

Activity (20)

You've already reviewed this. Edit your review.
1 hundred reads
1 thousand reads
Oleg Waters liked this
Erich Daugherty liked this
Benoit Hiller liked this
ccodyc liked this
jose_a_casimiro liked this
quyen2012 liked this
Ning Zhang liked this
Joseph Andy liked this

You're Reading a Free Preview

Download
scribd
/*********** DO NOT ALTER ANYTHING BELOW THIS LINE ! ************/ var s_code=s.t();if(s_code)document.write(s_code)//-->