TDD Vs UML?? Oo  XML
Índice dos Fóruns » Assuntos gerais (Off-topic)
Autor Mensagem
Elizeu_Santos
Virtual Machine Man
[Avatar]

Membro desde: 01/08/2008 20:21:57
Mensagens: 670
Localização: RJ
Offline

li em alguns tópicos pessoas falando em substituir UML pelo TDD o que para mim foi um choque pois para mim são metodologias com propósitos distintos que devem andar lado a lado. Não postei links por que estou na empresa e a maior parte dos links estão bloqueados.

alguém quer falar sobre isso?

JSF 2
EJB 3
Spring 3
Hibernate 4


"É um prazer puro da alma espalhar pelo mundo o fruto de seus estudos e meditações, ainda sem outra remuneração que a consciência de fazer bem."
José Bonifácio
Elizeu_Santos
Virtual Machine Man
[Avatar]

Membro desde: 01/08/2008 20:21:57
Mensagens: 670
Localização: RJ
Offline

http://dojofloripa.wordpress.com/2007/05/02/uml-vs-tdd/

não da pra ler aqui, mais sei que este eu li hoje cedo.

JSF 2
EJB 3
Spring 3
Hibernate 4


"É um prazer puro da alma espalhar pelo mundo o fruto de seus estudos e meditações, ainda sem outra remuneração que a consciência de fazer bem."
José Bonifácio
starkiller
JavaTeenager
[Avatar]
Membro desde: 17/09/2010 17:39:19
Mensagens: 170
Localização: Manaus - Am
Offline

Cara, pra mim o tdd vem pra complementar UML e vice-versa, se você poder usar os dois é bem melhor. UML dá uma melhor visão de seu sistema, baseando-o em modelos, assim cada participante tem uma visão do sistema de acordo com sua especialização. Trabalhei com TDD e realmente é bem versátil vc desenvolver um sistema já prevendo os bugs. O produto final fica muito mais estável e fica mais dificil de ocorrerem bugs. Mas nada impede de se usar UML. A pessoa que escreveu esse artigo tem uma visão bem limitada, restringindo UML a apenas diagramas de Classe, pois esta vai muito além, sendo uma linguagem unifica que baseia todo seu sistema em Modelos. Em Uml, temos diagramas de classes, caso de uso, configuração, deploy e por ai vai, deixando seu sistema muito bem documentado e de fácil entendimento por todos envolvidos no sistema. Então, dizer que se deve trocar uma pela outra é uma afirmação extremista demais e até imbecil, já que as duas tem propostas diferentes!

Desenvolvedor Java Mobile + Web
Android Developer too!

Só o Heavy Metal Salva!
immortalSoul
JavaGuru

Membro desde: 25/06/2006 13:41:50
Mensagens: 200
Offline

Entenda 'UML' no caso como sinonimo de pensar em toda estrutura do software, com base em forte documentação em detrimento de um modelo mais empirico.

Claro que todo mundo sabe que UML é somente uma linguagem de modelagem e que não tem nenhuma relação com a forma de desenvolver, mas é comum as empresas usarem os documentos em UML como artefato de entrada e saida para alimentar um processo em cascata, onde as tarefas de levantamento, analise, projeto, codificação e testes podem ser facilmente percebido.

O TDD traz uma visão um pouco diferente, um foco maior nos testes e não no processo.

A diferença é basicamente essa: Um está como sinonimo de foco em processo e o outro está como sinonimo de foco nos resultados (dos testes).
immortalSoul
JavaGuru

Membro desde: 25/06/2006 13:41:50
Mensagens: 200
Offline

AHh..
outra coisa que esqueci de dizer é que realmente existe uma certa relação entre os dois, pois em uma a documentação está nos testes ( apesar de isso estar mais pra BDD) e no outro a documentação é um artefato próprio (Que raramente alguém se da o trabalho de olhar, pois quando existe ou está desatualizado ou incompleto).

This message was edited 1 time. Last update was at 17/03/2011 15:10:08

starkiller
JavaTeenager
[Avatar]
Membro desde: 17/09/2010 17:39:19
Mensagens: 170
Localização: Manaus - Am
Offline

Ainda sim não tem nada haver trocar um pelo outro, sendo que os dois podem coexistir, sem contar que desnvolver software sem um processo bem consolidado é praticamente impossivel, pois gera varias falhas no futuro, tendo todo um retrabalho para corrigir as memas.

Desenvolvedor Java Mobile + Web
Android Developer too!

Só o Heavy Metal Salva!
esmiralha
JavaEvangelist

Membro desde: 19/07/2006 09:04:42
Mensagens: 402
Offline

Elizeu_Santos wrote:li em alguns tópicos pessoas falando em substituir UML pelo TDD o que para mim foi um choque pois para mim são metodologias com propósitos distintos que devem andar lado a lado. Não postei links por que estou na empresa e a maior parte dos links estão bloqueados.

alguém quer falar sobre isso?


Eu já fiquei chocado quando você disse que UML é uma metodologia.
Giulliano
GUJ Master
[Avatar]

Membro desde: 14/11/2006 19:29:38
Mensagens: 1627
Localização: São Paulo
Offline

Elizeu_Santos wrote:li em alguns tópicos pessoas falando em substituir UML pelo TDD o que para mim foi um choque pois para mim são metodologias com propósitos distintos que devem andar lado a lado. Não postei links por que estou na empresa e a maior parte dos links estão bloqueados.

alguém quer falar sobre isso?


Meus professores sempre diziam: se for buscar informação, busque de uma fonte confiável.

Oracle Certified Master, Java EE 5 Enterprise Architect
Oracle Certified Professional Java Programmer
GiuLLianO MoRRoNi




<UnTouChAbLe>
[Email] [WWW] [MSN]
YvGa
Virtual Machine Man

Membro desde: 07/03/2007 15:58:16
Mensagens: 518
Offline

Giulliano wrote:
Elizeu_Santos wrote:li em alguns tópicos pessoas falando em substituir UML pelo TDD o que para mim foi um choque pois para mim são metodologias com propósitos distintos que devem andar lado a lado. Não postei links por que estou na empresa e a maior parte dos links estão bloqueados.

alguém quer falar sobre isso?


Meus professores sempre diziam: se for buscar informação, busque de uma fonte confiável.


Concordo.

E para ajudar a entender o que é de fato fonte confiavel eu digo o que, pra mim, nao eh: Blog.

Livros sao fontes confiaveis, procure neles o que voce precisa. Blog é otimo pra voce ler uma outra visao, ou nao, de um assunto que voce ja conhece. Como aprendizado eles tem muito pouco a oferecer, normalmente.

Sobre o post, eu entendi a opiniao do autor e concordo em alguns pontos, mas eh bem superficial, o que acaba confundindo mesmo. A comparacao pode parecer estranha a principio, mas acho que a intencao era de mostrar que com TDD vc nao precisa de UML, pelo menos nao da UML documentacao (UML eh bastante eficiente para comunicacao). Na verdade eh uma forma diferente, e um pouco estranha, de fazer a velha comparacao Agil x Cascata.

This message was edited 1 time. Last update was at 17/03/2011 19:53:33


Paulo Borio
s4nchez
Virtual Machine Man
[Avatar]

Membro desde: 05/06/2006 11:35:55
Mensagens: 674
Localização: London, UK
Offline

Fico feliz que quase 4 anos depois esse meu post ainda chama atencao de alguns. Por outro lado, fico surpreso que ainda tem gente ficando chocado com o que esta escrito ali.

Elizeu, voce pode explicar um pouco melhor o que quis dizer com "metodologias com propositos distintos que devem andar lado a lado"?

Ivan Sanchez | coding dojo | blog | twitter
[WWW]
immortalSoul
JavaGuru

Membro desde: 25/06/2006 13:41:50
Mensagens: 200
Offline

YvGa wrote:
Giulliano wrote:
Elizeu_Santos wrote:li em alguns tópicos pessoas falando em substituir UML pelo TDD o que para mim foi um choque pois para mim são metodologias com propósitos distintos que devem andar lado a lado. Não postei links por que estou na empresa e a maior parte dos links estão bloqueados.

alguém quer falar sobre isso?


Meus professores sempre diziam: se for buscar informação, busque de uma fonte confiável.


Concordo.

E para ajudar a entender o que é de fato fonte confiavel eu digo o que, pra mim, nao eh: Blog.

Livros sao fontes confiaveis, procure neles o que voce precisa. Blog é otimo pra voce ler uma outra visao, ou nao, de um assunto que voce ja conhece. Como aprendizado eles tem muito pouco a oferecer, normalmente.

Sobre o post, eu entendi a opiniao do autor e concordo em alguns pontos, mas eh bem superficial, o que acaba confundindo mesmo. A comparacao pode parecer estranha a principio, mas acho que a intencao era de mostrar que com TDD vc nao precisa de UML, pelo menos nao da UML documentacao (UML eh bastante eficiente para comunicacao). Na verdade eh uma forma diferente, e um pouco estranha, de fazer a velha comparacao Agil x Cascata.


Estranho não, é muito comum e até é compreensivel.
Como disse antes, é a questão do foco. Quando se da enfase no UML normalmente a empresa está dando enfase no processo e na documentação como suporte a esse processo. ( Isso não é regra, mas é uma generalização 'aceitavel')
O TDD inverte as coisas e coloca o foco no resultado(dos testes). A documentação do teu sistema e de tuas regras são os próprios casos de teste ( mais ainda digo que isso está mais pra BDD ).
Raramente uma empresa vai adotar formalmente a UML tendo como foco a comunicação ( apesar da utilização dos artefatos para comunicação ser inerente aos processos ). E indo um pouco além, a UML pode no máximo complementar a comunicação. Ela SOZINHA não é adequada o suficiente nem mesmo para comunicação.

Elizeu_Santos
Virtual Machine Man
[Avatar]

Membro desde: 01/08/2008 20:21:57
Mensagens: 670
Localização: RJ
Offline

desculpem as falhas nas minhas "metodologias" rsrs.

JSF 2
EJB 3
Spring 3
Hibernate 4


"É um prazer puro da alma espalhar pelo mundo o fruto de seus estudos e meditações, ainda sem outra remuneração que a consciência de fazer bem."
José Bonifácio
Elizeu_Santos
Virtual Machine Man
[Avatar]

Membro desde: 01/08/2008 20:21:57
Mensagens: 670
Localização: RJ
Offline

s4nchez wrote:Fico feliz que quase 4 anos depois esse meu post ainda chama atencao de alguns. Por outro lado, fico surpreso que ainda tem gente ficando chocado com o que esta escrito ali.

Elizeu, voce pode explicar um pouco melhor o que quis dizer com "metodologias com propositos distintos que devem andar lado a lado"?



OOP + OOA
UML + TDD

vejo a UML como uma linguagem para documentação, e a TDD como uma tecnologia de testes. não sei se os termos estão corretos, sou iniciante. mais uma sendo documentação e outra de testes deveriam andar juntas e não se substituírem.

JSF 2
EJB 3
Spring 3
Hibernate 4


"É um prazer puro da alma espalhar pelo mundo o fruto de seus estudos e meditações, ainda sem outra remuneração que a consciência de fazer bem."
José Bonifácio
Elizeu_Santos
Virtual Machine Man
[Avatar]

Membro desde: 01/08/2008 20:21:57
Mensagens: 670
Localização: RJ
Offline

starkiller wrote:Cara, pra mim o tdd vem pra complementar UML e vice-versa, se você poder usar os dois é bem melhor. UML dá uma melhor visão de seu sistema, baseando-o em modelos, assim cada participante tem uma visão do sistema de acordo com sua especialização. Trabalhei com TDD e realmente é bem versátil vc desenvolver um sistema já prevendo os bugs. O produto final fica muito mais estável e fica mais dificil de ocorrerem bugs. Mas nada impede de se usar UML. A pessoa que escreveu esse artigo tem uma visão bem limitada, restringindo UML a apenas diagramas de Classe, pois esta vai muito além, sendo uma linguagem unifica que baseia todo seu sistema em Modelos. Em Uml, temos diagramas de classes, caso de uso, configuração, deploy e por ai vai, deixando seu sistema muito bem documentado e de fácil entendimento por todos envolvidos no sistema. Então, dizer que se deve trocar uma pela outra é uma afirmação extremista demais e até imbecil, já que as duas tem propostas diferentes!


pois é. é exatamente minha visão.

JSF 2
EJB 3
Spring 3
Hibernate 4


"É um prazer puro da alma espalhar pelo mundo o fruto de seus estudos e meditações, ainda sem outra remuneração que a consciência de fazer bem."
José Bonifácio
YvGa
Virtual Machine Man

Membro desde: 07/03/2007 15:58:16
Mensagens: 518
Offline

immortalSoul wrote:
Estranho não, é muito comum e até é compreensivel.
Como disse antes, é a questão do foco. Quando se da enfase no UML normalmente a empresa está dando enfase no processo e na documentação como suporte a esse processo. ( Isso não é regra, mas é uma generalização 'aceitavel')
O TDD inverte as coisas e coloca o foco no resultado(dos testes). A documentação do teu sistema e de tuas regras são os próprios casos de teste ( mais ainda digo que isso está mais pra BDD ).
Raramente uma empresa vai adotar formalmente a UML tendo como foco a comunicação ( apesar da utilização dos artefatos para comunicação ser inerente aos processos ). E indo um pouco além, a UML pode no máximo complementar a comunicação. Ela SOZINHA não é adequada o suficiente nem mesmo para comunicação.


Sim, porque UML para comunicacao nao precisa ser formalizada. Quando eu digo muito eficiente para comunicacao, eu digo como auxilio numa explicacao ou numa ideia. Isso nao vai precisar ser arquivado, versionado, etc... Ou viraria documentacao.

Falo de comunicacao como um rascunho no papel, nesse ponto UML é eficiente.

Paulo Borio
 
Índice dos Fóruns » Assuntos gerais (Off-topic)
Ir para:   
Powered by JForum 2.1.8 © JForum Team