Académique Documents
Professionnel Documents
Culture Documents
Use a Cabea Desenvolvimento de Software uma srie de diagramas informativos e ilustraes inteligentes
extravagante, mas muito bem planejada, projetada para transmitir informaes de maneira precisa e clara
diretamente para SEU crebro. um tipo de livro totalmente novo.
- Scott Hanselman
Desenvolvedor de Softwares, Orador, Autor de
Scott Hanselmans Computer Zen (A filosofia zen de Scott Hanselman para computadores).
Este um daqueles livros que desenvolvedores experientes gostariam de ter quando comearam. Sei disso, sou
um deles.
- Burk Hufnagel, Desenvolvedor de Softwares Snior
Poderia ter evitado muitos problemas se tivesse lido este livro antes de meu ltimo projeto!
- Essa desenvolvedora pediu para manter-se annima, para que o gerente de seu ltimo
projeto no ficasse preocupado!
Use a Cabea Desenvolvimento de Software ensina muitas lies valiosas que ajudaro qualquer pessoa a distribuir
softwares de qualidade a tempo e dentro do oramento. Seguir os princpios bsicos ensinados neste livro ajudar
a manter seu projeto sob controle do incio ao fim. Independente de h quanto tempo voc vem desenvolvendo
softwares, Use a Cabea Desenvolvimento de Software lhe dar ferramentas essenciais para o desenvolvimento de
projetos bem-sucedidos do incio ao fim.
- Adam Z. Szymanski, Gerente de Projetos de Software, Laboratrio de Pesquisa Naval
As idias deste livro podem ser usadas por gerentes iniciantes e experientes que quiserem melhorar imediatamente
o processo geral de desenvolvimento de softwares.
- Dan Francis, Gerente de Engenharia de Softwares, uma das 50 maiores empresas da Fortune
Uma perspectiva totalmente nova do processo de desenvolvimento de softwares. Uma tima introduo ao
gerenciamento de uma equipe de desenvolvimento desde os requisitos at a distribuio.
- McClellan Francis, Engenheiro de Software
i
Elogios a Use a Cabea Anlise e Projeto Orientado a Objeto
Use a Cabea Anlise & Projeto Orientado ao Objeto uma abordagem inovadora da A&POO (Anlise & Projeto Orientado
ao Objeto). O que torna este livro diferente seu enfoque no aprendizado. H livros demais no mercado que desperdiam
muito tempo explicando razes, mas no habilitam realmente o praticante para comear a trabalhar em um projeto. Estes
livros so muito interessantes, mas no so to prticos. Tenho certeza de que o futuro da prtica de desenvolvimento
de softwares ter como enfoque o executor. Os autores tornaram o contedo sobre A&POO acessvel e utilizvel para o
praticante.
- Ivar Jacobson, Consultoria Ivar Jacobson
Acabei de ler UC A&POO e adorei! O livro consegue percorrer os aspectos essenciais da anlise e projeto
orientados a objetos com UML e casos de uso, e at mesmo com vrias aulas sobre um bom projeto de software,
tudo de uma maneira veloz e fcil de aprender. O que mais gostei neste livro foi seu enfoque nas razes para
trabalharmos com a A&POO criar software de qualidade! Ao definir o que um software de qualidade e mostrar
como cada etapa do processo de A&POO leva a esse objetivo, o livro consegue ensinar at mesmo ao mais antigo
programador de Java porque a A&POO importante. Este um timo primeiro livro sobre projeto para
qualquer pessoa iniciante em Java, ou at para os que j so programadores de Java h algum tempo, mas ficam
assustados com os grossos livros sobre Anlise e Projeto OO.
- Kyle Brown, Famoso Engenheiro, IBM
Finalmente um livro sobre A&POO que reconhece que a UML apenas uma notao e que o que importa no
desenvolvimento de softwares passar algum tempo analisando os problemas.
- Pete McBreen, Autor, Software Craftsmanship (A Arte de Criar Softwares)
O livro faz um bom trabalho ao usar aquele estilo de redao interessante, visualmente orientado da srie Use a
Cabea. Mas por trs das figuras divertidas e das fontes extravagantes temos uma apresentao sria, inteligente e
extremamente bem-elaborada da Anlise e Projeto OO. Este livro apresenta uma opinio slida de como projetar
programas e a comunica efetivamente. Adoro a maneira como ele usa exemplos em andamento para conduzir o
leitor pelos diversos estgios do processo de projetar. Ao ler o livro, me senti como se olhasse sobre os ombros de
um projetista experiente que estivesse me explicando que questes so importantes em cada etapa e por qu.
- Edward Sciore, Professor Associado, Departamento de Cincia da Computao,
Boston College
Este um livro bem-projetado que oferece o que promete para seus leitores: como analisar, projetar e criar
softwares de qualidade orientados a objetos. Seu contedo flui facilmente da aplicao de casos de uso para a
coleta de requisitos anlise, projeto, implementao, teste e iterao. Cada etapa do desenvolvimento de softwares
orientados a objetos apresentada luz de slidos princpios de engenharia de softwares. Os exemplos so claros e
ilustrativos. Trata-se de um livro consistente e inovador sobre desenvolvimento de softwares orientados a objetos.
- Dung Zung Nguyen, Orador,
Rice University
ii
Elogios a Use a Cabea Padres de Projetos
Recebi o livro ontem e comecei a ler no caminho para casa... e no consegui parar. Levei para a academia e acho que as
pessoas me viram rindo bastante enquanto me exercitava e lia. Realmente muito arrojado. Alm de divertido, os autores
abordam muitos assuntos e vo direto ao ponto. Fiquei realmente impressionado.
- Erich Gamma, engenheiro de renome da IBM
e co-autor de Padres de Projetos
Use a Cabea Padres de Projeto consegue combinar diverso, gargalhadas, discernimento, profundidade
tcnica e timos conselhos prticos em uma leitura interessante e contemplativa. Sendo iniciante em padres de
projeto, ou se j os usa h anos, certamente voc vai trazer algo de sua visita a Objectville.
- Richard Helm, co-autor de Padres de Projeto com o resto da Gangue dos Quatro Erich
Gamma, Ralph Johnson e John Vlissides
Sinto como se o peso de milhares de livros tivesse sido tirado de minha cabea.
- Ward Cunningham, inventor do Wiki e fundador do Hillside Group
Este livro chega perto da perfeio, pela maneira como combina percia e facilidade de leitura. Ele se expressa
com autoridade e de leitura simples. um dos poucos livros de software que j li que me parece indispensvel.
(Colocaria cerca de 10 livros nessa categoria).
- David Gelernter, Professor de Cincia da Computao, Universidade de Yale, e Autor de
Mirror Worlds (Mundos Espelhados) e Machine Beauty (A Beleza das Mquinas)
Um mergulho de cabea no universo dos padres, um espao em que coisas complexas passam a ser simples,
mas coisas simples tambm passam a ser complexas. No consigo pensar em guias tursticos melhores do que os
Freeman.
- Miko Matsumura, Analista Industrial, Ex-Instrutor Chefe de Java da Middleware Company,
Sun Microsystems
Minha primeira reao foi rolar no cho de rir. Aps me recompor, percebi que alm do livro ser tecnicamente
apurado, a introduo aos padres de projeto mais fcil de entender que j vi.
- Dr. Timothy A. Budd, Professor Associado de Cincia da Computao na Universidade do
Estado do Oregon e autor de vrios livros, inclusive C++ for Java Programmers (C++ para
Programadores de Java)
Jerry Rice percorre padres melhor do que qualquer recebedor da NFL, mas os Freeman o venceram. srio...
este um dos livros mais divertidos e inteligentes sobre projeto de softwares que j li.
- Aaron LaBerge, VP Technology, ESPN.com
Outros livros relacionados da OReilly
iii
Outros livros da srie Use a Cabea da OReilly
Use a Cabea Java
Use a Cabea Anlise e Projeto Orientado a Objeto (A&POO)
Use a Cabea Ajax (Iniciao rpida)
Use a Cabea HTML com CSS & XHTML
Use a Cabea Padres de Projetos
Use a Cabea Servlets & JSP
Use a Cabea EJB
Use a Cabea PMP
Use a Cabea SQL
Use a Cabea JavaScript
iv
A todos que trabalham em algum projeto conosco e nos
apontaram onde erramos, onde acertamos e que livros ler... aqui
est nossa retribuio.
vii
sumrio
Contedo (Sumrio)
Introduo xxv
1 desenvolvimento de softwares de qualidade: Satisfazendo seu cliente 1
2 coletando requisitos: Sabendo o que o cliente quer 25
3 planejamento do projeto: Planejando para o sucesso 57
4 roteiros de usurio e tarefas: Dando nfase ao trabalho 93
5 um projeto satisfatrio: Colocando em prtica um projeto de qualidade 129
6 controle de verses: Desenvolvimento defensivo 151
6.5 construindo seu cdigo: Inserir a tabulao de a no espao b... 183
7 teste e integrao contnua: As coisas do errado 195
8 desenvolvimento baseado em testes: Mantendo seu cdigo coeso 233
9 terminando uma iterao: Est tudo se encaixando... 267
10 a prxima iterao: Se no tiver falhas... aperfeioe assim mesmo 293
11 erros: Eliminando erros como um profissional 321
12 o mundo real: Usando um processo no dia-a-dia 349
ix
sumrio
planejamento do projeto
3
Planejando para o sucesso
Qualquer software de peso comea com um grande plano.
Neste captulo voc vai aprender a criar esse plano. Voc vai aprender a trabalhar com o cliente
para priorizar seus requisitos. Tambm DEFINIR ITERAES que guiaro voc e sua equipe.
Para concluir, criar um plano de desenvolvimento exequvel que voc e sua equipe possam
executar e monitorar confiantemente. Ao terminar, saber exatamente como ir dos requisitos ao
marco 1.0.
xii
como usar este livro
1 Tem acesso a um computador e alguma experincia em Usamos Java no livro, mas voc
pode fazer vi
que C#. Porstm,angroosadsaiant
programao?
e fingir
2
vista grossa para fingir queafaPezer
Quer aprender tcnicas para a construo e distribuio de
rl.
softwares de qualidade? Quer entender os princpios existentes
por trs das iteraes e do desenvolvimento baseado em testes?
xxvi introduo
a introduo
Leia-me
Essa uma experincia de aprendizado e no um livro de consulta. Eliminamos deliberadamente tudo que pudesse
atrapalhar o aprendizado independente do que estivssemos abordando nesse ponto do livro. E na primeira leitura,
voc precisa comear desde o incio, porque o livro faz suposies sobre o que voc j viu e aprendeu.
As atividades NO so opcionais.
Os exerccios e atividades no so complementos; fazem parte do contedo principal do livro. Alguns deles so para
ajudar na memorizao, outros para a compreenso e alguns o ajudaro a aplicar o que voc aprendeu. Alguns so
apenas para faz-lo pensar sobre como resolveria o problema. No salte os exerccios. As palavras-cruzadas so a
nica coisa que voc no precisa fazer, mas so um bom exerccio para dar a seu crebro uma chance de pensar nas
palavras e termos do aprendizado em um contexto diferente.
xxxii introduo
desenvolvimento de softwares de qualidade
Quanto custar?
Isso no surpresa. A maioria dos clientes quer saber a quantia que eles tero que
gastar. Nesse caso, no entanto, Tom tem bastante dinheiro, logo, esse no um
grande problema para ele.
A Conferncia
TrailMix