Ciclo de Desenvolvimento de Software

Salve, Salve Galera!

Qual Ciclo você usa?

Cascata?
Espiral?
RUP?
XP?

Por que usa este? Existe algum parametro para saber qual usar?

Atn.
Dennys Fredericci
http://www.dennys.eti.br

Aqui na ThoughtWorks a gente usa uma mistura de XP e Scrum, e em alguns casos os clientes pedem algo um pouco diferente, por querer mais ou menos envolvimento com o time de desenvolvedores.

Mais no site, (http://thoughtworks.com) e no site do Tio Fowler - http://martinfowler.com

[quote=cv]Aqui na ThoughtWorks a gente usa uma mistura de XP e Scrum, e em alguns casos os clientes pedem algo um pouco diferente, por querer mais ou menos envolvimento com o time de desenvolvedores.

Mais no site, (http://thoughtworks.com) e no site do Tio Fowler - http://martinfowler.com [/quote]

XP!? :shock:

XP é pauleira né?! Comenta um pouco dele ai! :slight_smile:

Ah, sei lah, eh o jeito de desenvolver software que faz mais sentido :slight_smile:

O que vc gostaria de saber, mais especificamente?

[quote=cv]Ah, sei lah, eh o jeito de desenvolver software que faz mais sentido :slight_smile:

O que vc gostaria de saber, mais especificamente?[/quote]

rs* é só responder o questionário…

O que é o XP? - eu tenho uma idéia, mas nada melhor do que beber da fonte :wink:

Porque utiliza ele? e não utiliza o RUP?

Você escolhe o que usar dependendo do projeto?? é né?

Tô querendo escrever um tutorial sobre Engenharia de Software…

Atn.
Dennys Fredericci
http://www.dennys.eti.br
Sun Certified Java Programmer

Sempre tive uma vontade muito grande de perguntar isso, mas nunca surgiu uma boa oportunidade. Mas aí vai: por que utilizar RUP e não XP?

De forma bém resumidamente e rápida, XP é uma metodologia muito diferente de RUP!

Em geral, no desenvolvimento utilizando RUP será necessário a geração de muito artefato e muita documentação, no entanto, no XP nem tanto… a documentação, mas não como em RUP!

Mas não se enganem achando que XP é apenas uma metodologia que elimina documetação. Ela vai muito além disso!

As principais características de uma equipe que desenvolve utilizando XP são:

Coragem,
Simplicidade,
Feedback,
Comunicação.

Ou seja, ao invés de documentações extensas no papel em RUP, opta-se pela comunicação interpessoal no XP. Comunicação também é importante no XP por se usar programação em PAR!

Coragem para fazer refactorings e utilizar programação guiada por testes… incentivar contratos abertos ao invés de contratos fechados e se expor ao cliente.

Feedback da equipe e do cliente com relação ao projeto.

Simplicidade ao escrever código., Ou seja, no XP nunca se começa com as soluções mais difíceis, e sim com a solução ideal para o problema. Caso o problema piore, dali refactoring!!! Por isso, muito coragem!!!

Desculpem-me por ser tão breve… XP é uma metodologia muito interessante para ser tratada com apenas estas linhas!!! Quem conhece sabe do que estou falando… e olha que eu não conheço XP!!!

Vocês podem dar uma olhada neste site aqui:
www.xispe.com.br

Se quiserem meu contato para discutir isso melhor, será um prazer! Sou iniciante assim como muitos aqui… e tenho muita vontade de aprender mais e mais em XP

Um Abraço
Thiago Senna

Bom… esqueci de responder uma pergunta com relação de quando se deve usar XP!

O XP pode ser usado em n tipos de projetos desde grandes até pequenos!
Já ouvi muitos dizerem que XP só serve para projetos pequenos e médio porte. Mas na verdade o XP nasceu em um projeto de Grande Porte… então é possível usar XP em projetos de grande porte sim!

Na verdade… o que deve ser avaliar é quando não se deve usar XP…
Um dos casos mais graves em que não é possível usar XP é quando o cliente não se encontra disponível para trabalhar junto com a equipe e quando existe rivalidade entre os componentes da equipe.

XP nunca funcionará em ambiente competitivo!!!

De boa… xp vai bém além disso…

Um Abraço!
Thiago

[quote=Thiago Senna]O XP pode ser usado em n tipos de projetos desde grandes até pequenos!
Já ouvi muitos dizerem que XP só serve para projetos pequenos e médio porte. Mas na verdade o XP nasceu em um projeto de Grande Porte… então é possível usar XP em projetos de grande porte sim![/quote]

Só um detalhe. Não é que o XP não serve para projetos de grande porte, mas sim que ele é mais indicado para projetos com equipes pequenas, indiferente do tamanho do projeto.

Qual metodologia funciona quando isso ocorre? A medologia do “eu faço tudo sozinho, no meu codigo ninguem mexe”, sei la acho que equipes assim ja nasceram derrotadas e se o projeto tem isso nao há metodologia que resolva.

Ainda nao tive o prazer de trabalhar com XP totalmente, mas sempre que possivel uso algumas premissas dele, refactoring, unit tests, etc.

]['s

Olá Fabrício!

Obrigado pelos comentários e pelo suas ótimas colocações que você fez com relação as minhas opiniões sobre o XP!

Concordo plenamente de que qualquer equipe que contenha rivalidade já é de certa forma derrotada. Mas infelizmente o perfil do profissional de informática é de ser uma pessoa competitiva! Confesso de parece que este perfil está mudando atualmente.

No entanto, eu acho que projetos que utilizam RUP por exemplo, são excessivamente documentados exatamente para controlar o desenvolvimento mesmo havendo rivalidade e competitividade entre os desenvolvedores. Afinal, se uma pessoa desenvolve por si só, de qualquer jeito aquilo estará documentado… pelo menos é o que eu penso na teoria!!

Mas completando, acredito que um profissional competitivo e individualista não será bém vindo em qualquer tipo de projeto, mas há metodologias mais próprias e outras menos próprias para profissionais com este perfil!

Um Abraço!
Thiago