O documento discute princípios e práticas para melhorar a agilidade e qualidade de projetos de software. Ele explora tópicos como engenharia de software versus arte, filosofias como o Toyota Production System e o Manifesto Ágil, e práticas como comunicação, propriedade coletiva de código e integração contínua. O documento também discute a importância da aprendizagem ativa e da adaptação contínua para o sucesso de projetos.
101. Engenharia Engenharia
Civil de Software
Requerimentos
Blueprint
Construção Codificação
Acabamento Entrega
102. Engenharia Engenharia
Arte
Civil de Software
Requerimentos
Blueprint
Tentativa & Erro
e
Implementação
Construção Codificação
Acabamento Entrega Acabamento
103. Engenharia Engenharia
Arte
Civil de Software
Blueprint
Design e
Tentativa & Erro
Implementação
e
Implementação
Construção
“Compilador”
Acabamento Entrega Acabamento
104.
105.
106. // create some properties and get the default Session
Properties props = new Properties();
props.put(quot;mail.smtp.hostquot;, _smtpHost);
Session session = Session.getDefaultInstance(props, null);
// create a message
Address replyToList[] = { new InternetAddress(replyTo) };
Message newMessage = new MimeMessage(session);
if (_fromName != null)
newMessage.setFrom(new InternetAddress(from,
_fromName + quot; on behalf of quot; + replyTo));
else
newMessage.setFrom(new InternetAddress(from));
newMessage.setReplyTo(replyToList);
newMessage.setRecipients(Message.RecipientType.BCC,
_toList);
newMessage.setSubject(subject);
newMessage.setSentDate(sentDate);
// send newMessage
Transport transport = session.getTransport(SMTP_MAIL);
transport.connect(_smtpHost, _user, _password);
transport.sendMessage(newMessage, _toList);
107. new EmailMessage()
.from(quot;demo@guilhermechapiewski.comquot;)
.to(quot;destination@address.comquot;)
.withSubject(quot;Fluent Mail APIquot;)
.withBody(quot;Demo messagequot;)
.send();
151. Manifesto for Agile Software Development
Kent Beck, Mike Beedle, Arie van Bennekum, Alistair Cockburn,
Ward Cunningham, Martin Fowler, James Grenning, Jim Highsmith,
Andrew Hunt, Ron Jeffries, Jon Kern, Brian Marick, Robert C. Martin,
Steve Mellor, Ken Schwaber, Jeff Sutherland, Dave Thomas
158. Indíviduos e Interações
do que processos e ferramentas
Software que funciona
do que documentação compreensiva
159. Indíviduos e Interações
do que processos e ferramentas
Software que funciona
do que documentação compreensiva
Colaboração do cliente
do que negociação de contratos
160. Indíviduos e Interações
do que processos e ferramentas
Software que funciona
do que documentação compreensiva
Colaboração do cliente
do que negociação de contratos
Responder a mudanças
do que seguir um plano
161.
162.
163. • A liberdade de rodar o programa, para
qualquer propósito
164. • A liberdade de rodar o programa, para
qualquer propósito
• A liberdade para estudar como o programa
funciona, e adaptá-la às suas necessidades
165. • A liberdade de rodar o programa, para
qualquer propósito
• A liberdade para estudar como o programa
funciona, e adaptá-la às suas necessidades
• A liberdade para redistribuir cópias para
poder ajudar seus vizinhos
166. • A liberdade de rodar o programa, para
qualquer propósito
• A liberdade para estudar como o programa
funciona, e adaptá-la às suas necessidades
• A liberdade para redistribuir cópias para
poder ajudar seus vizinhos
• A liberdade de melhorar o programa, e lançar
suas melhorias ao público, para que todos se
beneficiem
208. • 90% da razão de problemas num projeto é
comunicação
209. • 90% da razão de problemas num projeto é
comunicação
• Pair Programming
210. • 90% da razão de problemas num projeto é
comunicação
• Pair Programming
• Daily Scrum/Stand Up meeting
211. • 90% da razão de problemas num projeto é
comunicação
• Pair Programming
• Daily Scrum/Stand Up meeting
• Cliente sempre presente
212. • 90% da razão de problemas num projeto é
comunicação
• Pair Programming
• Daily Scrum/Stand Up meeting
• Cliente sempre presente
• Equipes Auto-Gerenciadas
224. Manifesto for Agile Software Development
We are uncovering better ways of developing
software by doing it and helping others do it.
Through this work we have come to value:
Individuals and interactions over processes and tools
Working software over comprehensive documentation
Customer collaboration over contract negotiation
Responding to change over following a plan
That is, while there is value in the items on
the right, we value the items on the left more.
225. Manifesto for Agile Software Development
Estamos are uncovering better maneiras melhores de
We “descobrindo” ways of developing
desenvolver software naand helping ajudando outros
software by doing it prática e others do it.
Through this a desenvolver.
work we have come to value:
Individuals and interactions over processes and tools
Working software over comprehensive documentation
Customer collaboration over contract negotiation
Responding to change over following a plan
That is, while there is value in the items on
the right, we value the items on the left more.