Ago 6th, 2008
Dicas sobre a Certificação UML da OMG (OCUP)
Creio que na minha caixa de email deve ter pelo menos umas 300 mensagens de leitores da MundoJava e de participantes da UML-BR pedindo informações sobre a certificação UML. Como repito as mesmas coisas a cada mail que respondo creio que passar este post em link vai me ajudar um pouco a dar uma resposta melhor.
Valor de Mercado
Na minha opinião é até meio sem sentido. A certificação OCUP da OMG é uma certificação originalmente direcionada a Tool Vendors (os caras que criam ferramentas UML), mas o mercado é meio viciado em certificação, principalmente as certificações “raras”, então, a certificação UML da OMG é bem valorizada. Creio que fui um dos primeiros a obtê-la aqui no Brasil.

Existem 3 níveis de certificação UML: Fundamental, Intermediate e Advanced. A Fundamental representa os famosos 20% da UML que é utilizada em 90% dos projetos [Jacobson] e creio que seja o nível que todos os profissionais aqui do Brasil possuem. Não vejo muita utilidade e nem tanto valor de mercado em investir mais do que a Fundamental.
Como é a prova OM0-100 (Fundamental)?
São 84 questões onde somente 80 valem para a avaliação. As 4 questões que não valem pontos são logo no início da prova e simplemente é uma pesquisa (não perca muito tempo com elas). Todas as questões são múltipla escolha, porém, tem aquelas famosas questões onde você deve assinalar mais de uma como correta. Exemplo: What applies to a Package? (mark 2).
A prova é bem conceitual. Ela valida bem o conhecimento da UML e as perguntas são baseadas na UML Superstructure Specification, v2.0 (05-07-04). A prova não é baseada na versão mais atual da UML2.
O que cai na prova Fundamental são conceitos básicos, diagrama de classes, diagrama de atividades, diagrama de sequências e diagrama de casos de uso. Se quiser fazer a prova, preste muita atenção no seu plano de estudos porque para o nível Fundamental não é tudo que cai na prova sobre cada diagrama. Como exemplo, sobre diagrama de atividades, Forks e Joins é um assunto que não cai na prova do nível Fundamental. No site de certificação existe um PDF que diz exatamente o que cai em cada nível baseado na Superstructure. Preste atenção exatamente no que cai para não estudar mais que o necessário.
A maior dificuldade da prova é o tempo. Minha recomendação é que se você sabe um pouco sobre UML não tente fazer a prova na caruda achando que UML é fácil. A prova é baseada na especificação da UML e não simplesmente diagramas onde você vai responder “Qual elemento é o ator?” ou “O que aquela linha com seta vazada significa?”. Vou dar o meu relato: já trabalho com “UML” deste o método Booch e a OMT (alguém se lembra do CoolJex?) mesmo assim não sobrou tempo. São 80 questões para responder em 90 minutos e algumas questões sobre diagrama de sequências e casos de uso você realmente precisa parar para pensar! Uma outra recomendação é que se você tem um inglês fraco pense duas vezes antes de fazer a prova. A prova é conceitual e o inglês é formal e técnico. O tempo é o maior desafio nessa prova.
Sugestão de estudo
Um ponto interessante é que literaturas tradicionais de UML (Ambler, Fowler, “Três Amigos”, Larman) vão te ajudar muito pouco. São ótimos livros, mas não para a certificação. Uma literatura que não existia na época que me certifiquei é o UML 2 Certification Guide: Fundamental & Intermediate Exams. Não posso comentar sobre este livro pois não lí. O livro que estudei para a certificação é o UML Bible do Tom Pender. É uma literatura bem completa que uso como referência muitas vezes. Aborda questões da Superstructure, tem exemplos e fala também da UML 1.X.
Se quiser estudar pelo Tom Pender meu guia de estudo é esse:
Conceitos Gerais: Capítulo 1 a 4
Diagrama de Classe: Capítulo 5 e 6 e Diagrama de Objetos do Capítulo 7.
Diagrama de Interação: Capítulo 9 (até Interaction Occurence)
Diagrama de Use-Case: Capítulo 12
Diagrama de Atividade: Capítulo 13
Independente da literatura que você escolher, a idéia é olhar o programa da prova citado, estudar primeiramente por algum livro e logo após estudar pela própria UML Superstructure Specification, v2.0 (05-07-04). O estudo pela Superstructe é obrigatório. Mas a Superstructure é um texto bem chato de ler.
O estudo pela Superstructure é importante por duas razões. A prova é baseada nesse texto e algumas perguntas como “What is a Namespace?” não constam em literatura nenhuma. Só está na especificação. Em segundo lugar algumas questões da prova apresentam diagramas que constam na especificação. Saber os diagramas exemplo que estão na Superstructure pode ser a chave para ir bem na prova.
O curso UML da Aspercom
Nosso curso UML 2.0 & Unified Process não é focado em certificação, mas fornece uma boa base para a prova se você não quiser estudar sozinho pela literatura indicada. Nosso curso é mais focado em demonstrar 3 bases importantes para análise e design de projetos orientado a objeto: Requisitos com Casos de Uso, Modelagem e Arquitetura. Um dos nossos alunos, o Daniel Guttermeyer (Iconophobia), relatou na lista UML-BR que obteve a certificação fazendo nosso curso e estudando pela Superstructure.
A Aspercom não é uma empresa muito fã de certificações, apesar de não ser 100% contra. Somos fãs de conhecimento. Isso pode ser constatado na nossa Visão e Missão.
Simulados
Buscando por “UML” no http://exams.googletoad.com/ achei dois simulados da OM0-100 (Fundamental): O da Pass4sure e o da ActualTests. Dei uma olhada bem por cima e creio que esses simulados podem ser uma referência sobre as questões que caem na prova. Não se assuste. Como disse a prova não é ver um diagrama e mostrar qual elemento é uma classe!
Mais informações:
O preço de cada prova de certificação é US$ 200. O centro de certificação é a PearsonVue. Para mais informações visitem os links abaixo:
http://www.omg.org/uml-certification/
http://www.pearsonvue.com/omg
http://exams.googletoad.com/?examsQ=uml
Enviar por e-mail | Hits para esta publicação: 777
Eu estudei pelo livro UML 2 Certification Guide: Fundamental & Intermediate Exams e recomendo. Várias questões da prova abordaram pontos não discutidos no livro, mas achei que ele me deu uma boa base, ajudando no raciocínio para chegar nas respostas corretas, já que existem várias questões bem abstratas na prova.
Oi Rodrigo, parabéns pelo artigo. Achei interessante você ter mencionado sobre a certificação: IBM Rational Solution Designer, no que ela se destacaria? Digo isto porque estou planejando em tirar alguma certificação ou da OMG ou IBM, e não sei qual ao certo ainda, justamente por questão de valorização e mercado!
Acho que não ficou muito claro no artigo. A RSD da IBM é uma prova que avaliará suas habilidades em Análise e Design baseado no método Booch com UML2. A prova da OMG só valida seu conhecimento na notação UML. A da IBM é mais completa nesse aspecto, mas como a da OMG é mais “rara” ela está bem cotada no mercado.
Você já possui a RSD da IBM ? Se não porque não começou por ela? Aproveitando o espaço, estou planejando estudar sobre DDD, inclusive já estou iniciando leitura do livro, bem como DSL. A partir daí a minha pergunta seria, até que ponto os conhecimentos de DDD e DSL estarão sendo adotados nas empresas do Brasil, bem como a nível de projeto? Muito poucas se propuseram a se benefeciar a partir do MDA, e estou arriscando um investimento nesta área de conhecimento.
Não tenho a RSD… quando tem evento da IBM sempre tem certificação grátis, mas infelizmente sempre tive muito azar com a minha agenda para participar desses eventos e pegar essa certificação. Comecei pela OMG exatamente porque estava estudando MDA/MDD.
DDD é um conjunto de práticas muito buscado mas pouco compreendido (leia meu artigo na MundoJava 28). Ambos DDD e DSL são assuntos na crista da onda (early adopters são bem animados com isso), porém, como conhecimento vale, mas como currículo vale pouco aqui no BR. Você vai dizer que sabe DDD e DSL na entrevista e o gerente vai dizer: -”Hã?”
;)
Interessante. Qual a sua experiência com MDD/MDA? Pergunto por conta da adoção do DSL ao invés do próprio MDA. Gostaria de ver casos de sucesso ou pelo menos alguns projetos em que o uso foi essencial para desenvolver aprendizado. Você possui algumas referências?