leds zeppellin infraestrutura de apoio ao desenvolvimento

48
Infraestrutura de apoio ao Desenvolvimento e Gestão de Projetos de Software Diego Pasti

Upload: ledsifes

Post on 28-Jul-2015

259 views

Category:

Technology


1 download

TRANSCRIPT

Page 1: Leds zeppellin   infraestrutura de apoio ao desenvolvimento

Infraestrutura de apoio ao Desenvolvimento e Gestão de Projetos de Software

Diego Pasti

Page 2: Leds zeppellin   infraestrutura de apoio ao desenvolvimento

Parte I – Contexto

Sobre o LEDS

Inovações.. Como?!

Um pouco de Agilidade

Parte II – Metodologias

Manifesto Ágil

Extreme Programming

Scrum

Outras Metodologias

Parte III – Infraestrutura

Taiga

Maven

Gitlab

Jenkins

Sonar

Nexus

Tomcat

Page 3: Leds zeppellin   infraestrutura de apoio ao desenvolvimento

O Laboratório de Extensão em Desenvolvimento de Sistemas (LEDS) é um ambiente experimental e multidisciplinar, que integra discentes e docentes com o objetivo de criar uma ponte entre a teoria e prática, propiciando o aprendizado e a inovação.

Page 4: Leds zeppellin   infraestrutura de apoio ao desenvolvimento

Parte I – Contexto

Sobre o LEDS

Inovações.. Como?!

Um pouco de Agilidade

Parte II – Metodologias

Manifesto Ágil

Extreme Programming

Scrum

Outras Metodologias

Parte III – Infraestrutura

Taiga

Maven

Gitlab

Jenkins

Sonar

Nexus

Tomcat

Page 5: Leds zeppellin   infraestrutura de apoio ao desenvolvimento

Como entregar Softwares melhores e mais rapidamente?

Existe uma pressão muito grande no mercado de software. Com clientes cada vez mais exigentes e demandas cada vez mais complexas.

Page 6: Leds zeppellin   infraestrutura de apoio ao desenvolvimento

Existe uma distancia sobre o que se aprende em sala de aula e o que se tem no mercado de trabalho. No laboratório os alunos são incentivados a buscarem soluções inovadoras e atuais, alinhada com as novidades da tecnologia de forma a reduzir essa distancia.

Uma dessas soluções é a adoção de metodologias de desenvolvimento que considerem melhor as especificidades da realidade desse mercado

Page 7: Leds zeppellin   infraestrutura de apoio ao desenvolvimento

Parte I – Contexto

Sobre o LEDS

Inovações.. Como?!

Um pouco de Agilidade

Parte II – Metodologias

Manifesto Ágil

Extreme Programming

Scrum

Outras Metodologias

Parte III – Infraestrutura

Taiga

Maven

Gitlab

Jenkins

Sonar

Nexus

Tomcat

Page 8: Leds zeppellin   infraestrutura de apoio ao desenvolvimento

Entregar software de melhor qualidade, com prazos e recursos cada vez menores tem sido um desafio para muitas empresa em resposta as novas e crescentes demandas.

Page 9: Leds zeppellin   infraestrutura de apoio ao desenvolvimento

Parte I – Contexto

Sobre o LEDS

Inovações.. Como?!

Um pouco de Agilidade

Parte II – Metodologias

Manifesto Ágil

Extreme Programming

Scrum

Outras Metodologias

Parte III – Infraestrutura

Taiga

Maven

Gitlab

Jenkins

Sonar

Nexus

Tomcat

Page 10: Leds zeppellin   infraestrutura de apoio ao desenvolvimento
Page 11: Leds zeppellin   infraestrutura de apoio ao desenvolvimento

O que é?

O Manifesto Ágil é uma declaração de princípios que fundamentam o desenvolvimento de software. Divulgado em 2001, declarava uma

nova forma de entender projetos que lidam diariamente com imprecisão e imprevisibilidade.

Page 12: Leds zeppellin   infraestrutura de apoio ao desenvolvimento

Porquê?

No início da década de 90, desenvolvedores se uniram para propor novas metodologias que atendesse melhor as demandas do mercado, cujas metodologias tradicionais não vinham atendendo de forma satisfatória [PÁDUA FILHO, 2009].

Page 13: Leds zeppellin   infraestrutura de apoio ao desenvolvimento

Pra quê?

Acelerar o desenvolvimento do software visando a melhoria contínua do processo, gerando benefícios como o aumento da comunicação e interação da equipe, organização diária para o alcance da meta definida, evitar falhas na elaboração, respostas rápidas às mudanças e aumento significativo da produtividade.

Page 14: Leds zeppellin   infraestrutura de apoio ao desenvolvimento

Valores:

Indivíduos e interação entre eles mais que processos e ferramentas.

Software em funcionamento mais do que documentação abrangente.

Colaboração com o cliente mais do que negociação de contratos.

Responder às mudanças mais do que seguir um plano [LUNA, COSTA, MOURA, 2011].

Page 15: Leds zeppellin   infraestrutura de apoio ao desenvolvimento

Princípios:

P1 – A prioridade é a satisfação do cliente, mediante o rápido e contínuo fornecimento de software que agregue um valor ao negócio.

P2 – As mudanças são bem-vindas, mesmo no final do desenvolvimento, principalmente se as alterações darão vantagem competitiva para os nossos clientes.

P3 – Fazer entregas frequentes de software que funcionem a partir de um par de semanas a um par de meses, sempre procurando o menor intervalo de tempo entre as entregas.

Page 16: Leds zeppellin   infraestrutura de apoio ao desenvolvimento

Princípios:

P4 – As pessoas de negócio (executivos) e os desenvolvedores devem trabalhar juntos diariamente e ao longo de todo o projeto.

P5 – Construir o projeto em torno de indivíduos motivados. Fornecer todo apoio necessário ao ambiente do projeto e confiar plenamente na equipe.

P6 – O diálogo face a face é a mais eficiente e eficaz forma de comunicar as informações dentro da equipe de desenvolvimento.

Page 17: Leds zeppellin   infraestrutura de apoio ao desenvolvimento

Princípios:

P7 – Software que funciona é a principal medida de progresso.

P8 – Os processos ágeis promovem um desenvolvimento sustentável. Os promotores, usuários e desenvolvedores devem ser capazes de manter um ritmo de trabalho constante por tempo indeterminado.

P9 – A atenção contínua à qualidade técnica e ao bom design melhora a agilidade.

Page 18: Leds zeppellin   infraestrutura de apoio ao desenvolvimento

Princípios:

P10 – A simplicidade é essencial. É preciso saber

maximizar o trabalho que não deve ser feito.

P11 – As melhores arquiteturas, requisitos e desenhos surgem a partir da própria equipe através de sua pró-atividade e auto-organização (inteligência coletiva e colaborativa).

P12 – Em intervalos regulares, a equipe deve refletir sobre como se tornar mais eficaz, e ajustar o seu comportamento para alcançar este objetivo

Page 19: Leds zeppellin   infraestrutura de apoio ao desenvolvimento

Parte I – Contexto

Sobre o LEDS

Inovações.. Como?!

Um pouco de Agilidade

Parte II – Metodologias

Manifesto Ágil

Extreme Programming

Scrum

Outras Metodologias

Parte III – Infraestrutura

Taiga

Maven

Gitlab

Jenkins

Sonar

Nexus

Tomcat

Page 20: Leds zeppellin   infraestrutura de apoio ao desenvolvimento

O que é?

Extreme Programming (XP) é uma metodologia ágil de desenvolvimento de software, nascida nos Estados Unidos ao final da década de 90.

Page 21: Leds zeppellin   infraestrutura de apoio ao desenvolvimento

Porque usar?

A metodologia Extreme Programming é uma resposta às novas e crescentes demandas do mercado por software, onde entregar o produto melhor e mais rápido tem sido uma necessidade, e atender essa demanda com as metodologias tradicionais eram completamente inviáveis.

Pra quê serve?

Ajudar a criar sistemas de melhor qualidade, que são produzidos em menos tempo e de forma mais econômica que o habitual

Page 22: Leds zeppellin   infraestrutura de apoio ao desenvolvimento

Quando usar? •Projetos cujos requisitos são vagos e mudam com frequência; •Desenvolvimento de sistemas orientados a objeto; •Equipes pequenas, preferencialmente até 12 desenvolvedores; •Desenvolvimento incremental (ou iterativo), onde o sistema começa a ser implementado logo no início do projeto e vai ganhando novas funcionalidades ao longo do tempo.

Page 23: Leds zeppellin   infraestrutura de apoio ao desenvolvimento

Valores: Feedback, Comunicação, Simplicidade e Coragem.

Quando o cliente é envolvido no processo de desenvolvimento ele aprende com o sistema e realimenta a equipe com alterações sobre a sua real necessidade.

A comunicação é fundamental seja entre e o cliente e a equipe e dentro da equipe em si.

Não gastar tempo tentando prever o futuro, pois dificilmente acertará. Gaste o tempo para atender de forma objetiva o que o cliente quer hoje, pois ele pode não querer aquilo mais no futuro a medida que vai aprendendo sobre sua necessidade.

Coragem.. Isso funciona!

Page 24: Leds zeppellin   infraestrutura de apoio ao desenvolvimento

Princípios:

Cliente Presente

Jogo do Planejamento (Trabalhar no que é mais importante pro cliente..)

Stand Up Meeting (Reunião em pé)

Programação em Par

Desenvolvimento Guiado pelos Testes

Refactoring

Código Coletivo

Código Padronizado

Design Simples

Metáfora

Ritmo Sustentável

Integração Contínua

Releases Curtos

Page 25: Leds zeppellin   infraestrutura de apoio ao desenvolvimento

Parte I – Contexto

Sobre o LEDS

Inovações.. Como?!

Um pouco de Agilidade

Parte II – Metodologias

Manifesto Ágil

Extreme Programming

Scrum

Outras Metodologias

Parte III – Infraestrutura

Taiga

Maven

Gitlab

Jenkins

Sonar

Nexus

Tomcat

Page 26: Leds zeppellin   infraestrutura de apoio ao desenvolvimento

O que é?

É um framework de gestão de projetos de software que seguem a metodologia ágil.

Porque usar?

Novas formas de se desenvolver software exigem novas formas de se gerenciá-los.

Page 27: Leds zeppellin   infraestrutura de apoio ao desenvolvimento

Como usar?

As tarefas de um projeto devem ser listados e priorizados pelo cliente gerando uma lista de tarefas (Product Backlog) e a sua realização é feita em etapas (Sprints) de curto prazo. São feitas reuniões diárias para avaliar o progresso, e reunião ao fim de cada etapa pra apresentar os resultados obtidos.

Page 28: Leds zeppellin   infraestrutura de apoio ao desenvolvimento

Parte I – Contexto

Sobre o LEDS

Inovações.. Como?!

Um pouco de Agilidade

Parte II – Metodologias

Manifesto Ágil

Extreme Programming

Scrum

Outras Metodologias

Parte III – Infraestrutura

Taiga

Maven

Gitlab

Jenkins

Sonar

Nexus

Tomcat

Page 29: Leds zeppellin   infraestrutura de apoio ao desenvolvimento
Page 30: Leds zeppellin   infraestrutura de apoio ao desenvolvimento

Parte I – Contexto

Sobre o LEDS

Inovações.. Como?!

Um pouco de Agilidade

Parte II – Metodologias

Manifesto Ágil

Extreme Programming

Scrum

Outras Metodologias

Parte III – Infraestrutura

Taiga

Maven

Gitlab

Jenkins

Sonar

Nexus

Tomcat

Page 31: Leds zeppellin   infraestrutura de apoio ao desenvolvimento
Page 32: Leds zeppellin   infraestrutura de apoio ao desenvolvimento
Page 33: Leds zeppellin   infraestrutura de apoio ao desenvolvimento
Page 34: Leds zeppellin   infraestrutura de apoio ao desenvolvimento
Page 35: Leds zeppellin   infraestrutura de apoio ao desenvolvimento
Page 36: Leds zeppellin   infraestrutura de apoio ao desenvolvimento
Page 37: Leds zeppellin   infraestrutura de apoio ao desenvolvimento
Page 38: Leds zeppellin   infraestrutura de apoio ao desenvolvimento
Page 39: Leds zeppellin   infraestrutura de apoio ao desenvolvimento
Page 40: Leds zeppellin   infraestrutura de apoio ao desenvolvimento
Page 41: Leds zeppellin   infraestrutura de apoio ao desenvolvimento
Page 42: Leds zeppellin   infraestrutura de apoio ao desenvolvimento
Page 43: Leds zeppellin   infraestrutura de apoio ao desenvolvimento
Page 44: Leds zeppellin   infraestrutura de apoio ao desenvolvimento
Page 45: Leds zeppellin   infraestrutura de apoio ao desenvolvimento
Page 46: Leds zeppellin   infraestrutura de apoio ao desenvolvimento
Page 47: Leds zeppellin   infraestrutura de apoio ao desenvolvimento
Page 48: Leds zeppellin   infraestrutura de apoio ao desenvolvimento

FIM

Email: [email protected]