Passed SCJD 391/400 (97.75%) - Finally...  XML
Índice dos Fóruns » Certificação Java
Autor Mensagem
asobrab
JavaChild
[Avatar]

Membro desde: 28/08/2006 20:38:14
Mensagens: 104
Localização: São Paulo - SP
Offline

Ola pessoal!

Depois de 10 dias uteis apos submeter meu projeto, ontem, 08-11-2009- 18:06:47 recebi meu relatório. Estou bastante feliz por ter concluído essa certificação.
Eu li o livro do Andrew Monkhouse's (não tudo, mas somente os capítulos mais importantes) os quais permite nos pegar algumas idéias para iniciar o desenvolvimento do projeto.
Meu projeto foi o Bodgitt and Scarper versão 2.3.1. Usei RMI para o servidor, 4 camadas (layers) (view, application, domain and data access), MVC, Observer/Observable pattern, wait/notifyAll para tranca de registros e alguns outros patterns como Domain Model, Value Object, Repository, Facade and factory.

Abaixo segue o relatório do site: https://www.certmanager.net/sun_assignment.

SUN REPORT:
This report shows the total points that could have been awarded in each section, and the actual number of points you were awarded. This is provided to give you per-section feedback on your strengths. The maximum possible score is 400; the minimum to pass is 320.

General Considerations (maximum = 100): 100
Documentation (maximum = 70): 70
O-O Design (maximum = 30): 30

GUI (maximum = 40): 31
Locking (maximum = 80): 80
Data store (maximum = 40): 40
Network server (maximum = 40): 40


Perdi uns pontinhos na GUI, talvez porque "inventei" de querer fazer coisas, além do pedido na especificação. Outra coisa que pode ter influenciado também foi usar o padrão Observer/Observable, o qual, pode ter deixado meu código um pouco mais complexo desnecessariamente. O importante aqui é: manter a GUI o mais simples quanto possível.

Quem tiver dúvidas quanto a viabilidade desta certificação, veja opiniões neste tópico.

É isso ai!

PS1: Se alguém tem alguma dúvida sobre SCJD, não hesite em enviar me uma MP.

This message was edited 1 time. Last update was at 09/11/2009 13:56:20


Johnny
SCJA, SCJP, SCWCD, SCJD(Relato)
Will_HRock
JavaGuru

Membro desde: 11/04/2009 20:40:23
Mensagens: 211
Offline

parabéns !!

score mto bom hein =)
[Email] [MSN]
JavaTux
JavaTeenager

Membro desde: 21/01/2008 21:45:30
Mensagens: 164
Localização: Rio de Janeiro
Offline

Parabéns pela aprovação!!!
Alexandre Gazola
JavaTeenager
[Avatar]

Membro desde: 23/07/2004 14:48:23
Mensagens: 176
Localização: Rio de Janeiro
Offline

A meu ver, por suas características, essa é uma certificação diferenciada. Parabéns pela dedicação e excelente resultado!

abraços

Alexandre Gazola

Blog: http://alexandregazola.wordpress.com

"Que proveito tem o homem ganhar o mundo inteiro e perder a sua alma?" (Mc. 8:36)

"Buscai, em primeiro lugar, o Reino de Deus e a sua justiça, e todas essas coisas vos serão dadas por acréscimo" (Mt. 6:33)
breno500as
Virtual Machine Man
[Avatar]
Membro desde: 11/10/2007 17:53:07
Mensagens: 613
Localização: Belo Horizonte - MG
Offline

Cara parabens por está certificação!!!Ela parece ser super bacana!!

Sun Certified Java Programmer 5.0
Sun Certified Web Component Developer 5.0
Sun Certified Business Component Developer 5.0
Paulo Silveira
Administrador
[Avatar]

Membro desde: 07/08/2002 18:38:50
Mensagens: 4154
Localização: São Paulo
Offline

parabens! incrivel resultado!

http://blog.caelum.com.br twitter: @paulo_caelum


[Email] [WWW]
Lucas Emanuel
GUJ Master

Membro desde: 09/08/2009 23:48:57
Mensagens: 1143
Localização: Heap
Offline

Parabéns
luistiagos
GUJ Expert
[Avatar]

Membro desde: 10/07/2006 10:37:23
Mensagens: 3009
Offline

quanto tempo levou pra fazer o projeto?




SCJP 1.5
SCJA 1.0
IBM DB2 Associate
[Email] [MSN]
WRYEL
JavaEvangelist
[Avatar]

Membro desde: 03/03/2008 21:27:20
Mensagens: 311
Localização: São Paulo
Offline

resultado fantastico! parabens.

prevejo que você já tem o pezinho dentro da SCEA

/**
* http://www.wryel.com.br
* SCJA / SCJP / OCWCD
*/
[WWW] [MSN]
Fernando Romulo da Silva
Thread.start()
[Avatar]

Membro desde: 29/04/2006 15:01:14
Mensagens: 46
Offline

Primeiramente gostaria de parabeniza-lo por mais uma vitória profissional, e que essa seja apenas mais uma dentre muitas!!!!
Estou tentando tb tirar essar certificacao, e estou criando meu sistema, urlyBird 1.1.1 (sistema de hotel), em quatro camadas: visao (swing), fachada (façade), negocios (model) e persistencia. Estou acostumado a criar uma fachada padrao, usando genericos, veja:

E implemento a fachada de acordo com a "Entidade". No meu projeto estou com a duvida de fazer uma façade direto mesmo:


Qual forma vc usou? obrigado e até mais.


Sun Certified Java Programmer 5.0
OliveirakunJava
Java Ninja
[Avatar]

Membro desde: 29/05/2008 20:50:47
Mensagens: 278
Localização: Diadema - SP
Offline

Parabéns!!, é bem raro ver alguém tirar essa certificação, seu score foi excelente!
Abraços e boa sorte nas próximas!

This message was edited 1 time. Last update was at 10/11/2009 14:06:56


Francis Borges Oliveira
SCJP 6
SCWCD 5
Java no Renkinjutsushi!!
Regis A Rocha
JavaGuru
[Avatar]

Membro desde: 07/04/2009 20:33:10
Mensagens: 219
Offline

Parabens cara!

SCJP 5
OCWCD 5

Next => OCBCD 5
ViniGodoy
Moderador
[Avatar]

Membro desde: 11/12/2006 08:22:01
Mensagens: 19489
Localização: Curitiba/PR
Offline

Vendo seu outro tópico, levanta a pergunta. E aí, o que achou do que aprendeu para fazer essa certificação?
Valeu mesmo à pena? É uma das certificações que só o que aprende para obte-la vale mais do que o diploma?

Acredito que a resposta seja sim. Eu costumo a reprovar sumariamente programadores juniores que apresentam código com "SCJP look&feel" em entrevistas de emprego. Entretanto, SCJD já me parece ser outro nível onde, como diz ali a própria proposta, "saber linguagem é uma coisa, saber programar é outra completamente diferente."

This message was edited 1 time. Last update was at 10/11/2009 14:39:14


@ViniGodoy - Lattes

Tem dúvidas de Java? Poste no fórum! Não respondo dúvidas de java via MP!

Ponto V! - Desenvolvimento de Jogos Profissional - @Pontov - Facebook
Projeto Towel - Swing de uma forma inteligente (Novo lar do ObjectTableModel e do Auto-Filtro).

Ei... você está usando DefaultTableModel no seu projeto??
Não faça isso! Veja: http://www.guj.com.br/posts/list/15/199067.java#1001295
[WWW]
asobrab
JavaChild
[Avatar]

Membro desde: 28/08/2006 20:38:14
Mensagens: 104
Localização: São Paulo - SP
Offline

Muito obrigado pelos comentários! Valeu.

Muitos me perguntaram sobre livros, se vale à pena ou não, em fim. Vou tentar dar uma resposta coletiva no geral.

Livros e materiais

Apesar de que essa certificação exige mais da parte prática do que da parte teórica, ter um livro, ajudaria a "pegar" as principais idéias para iniciar o desenvolvimento. Há dois livros específicos para está certificação (parte 1/projeto): 1) Andrew Monkhouse (2005) e, 2) Terry Camerlengo,at al (2002)

O primeiro, é o mais indicado, pois está sintonizada com a última versão da SCJD e o Java 5. De novo, o livro apenas ajuda no "start up", mas não que seja indispensável. Portanto, caso a pessoa não consiga o livro, apenas com os materiais e informações disponíveis, qualquer um consegue desenvolver o sistema. O ponto de inicio é: SCJD Reading Material e SCJD Faq

Parte 2 (prova escrita)

Na parte 2, são feitas apenas 4 perguntas (aleatórias) sobre o seu sistema. São perguntas compostas por varias sub-perguntas e, tudo tem que ser escrito. Tipo: "você usou RMI ou Sockets, quais vantagens, desvantagens de cada um"? Em fim...Quem realmente fez o projeto, não terá dificuldade de responder sobre o mesmo.

O que se aprende?

Primeiro, aprende a projetar um sistema considerando todas as variáveis propostas na especificação. A especificação deixa vários pontos em aberto, os quais lhe obriga a tomar decisões de projeto. Tipo: faço isso ou aquilo? Faço assim ou assado? Isso para mim, já é um diferencial desta certificação para com a SCJP. Como todos sabem, desenvolver, é acima de tudo uma atividade de criatividade e decisão. Como foi dito no tópico citado acima, conhecer a linguagem (SCJP) é uma coisa; saber usar a linguagem na prática é outra (SCJD).

Segundo, aprende a fazer somente aquilo que foi solicitado, na integra pelo cliente. A especificação é o roteiro geral do que deve ser feito. O cliente é o avaliador da Sun. Desse modo, o desenvolvedor aprende a pensar no cliente e a interpretar o que o cliente quer e espera de fato. Isso está no dia a dia de qualquer desenvolvedor.

Terceiro, além das questões de projeto (design) citado, você aprende a desenvolver de forma que seu sistema seja flexível para mudanças, o que, invariavelmente, acontece todos os dias. Por exemplo, na minha especificação, diz que meu sistema é para desktop, mas que, o cliente, considera a possibilidade de migra-lo para Web, sem muito impacto significativo, futuramente. Ou seja, tirar uma View e botar outra e, tudo deve continuar funcionando.

Quarto, você aprende a documentar seu sistema. A documentação envolve 3 pontos: 1) documentação do código (API completa). Neste ponto é dito que, deve-se comentar obrigatoriamente todos os métodos de Interfaces públicas e quaisquer códigos "estranhos". É encorajado ainda, a fazer comentários somente quando realmente necessário, o que lhe obriga a pensar em nomes de classes e métodos que, se auto-documentam; 2) Documentação do usuário (manual de uso). Esse documento deve ser capaz de "pegar" na mão do usuário e faze-lo usar o sistema completamente. e; 3) Documentação de requisitos físicos (JDK, SO, etc), ou seja, o que é necessário para rodar o sistema.

Quinto, você aprende a pensar nos requisitos funcionais e não funcionais do sistema. Ou seja, você aprende a fazer perguntas como: Quais funcionalidades meu sistema deve ter? Quais recursos e habilidades? Quais confiabilidades (falhas, recuperação, concorrência, exatidão) devem ser garantidas? Quais requisitos de implementação (linguagem, padrões, API, BD etc) devem ser considerados? Quais requisitos de suportabilidade (teste, manutenibilidade, configuração, instalação, serviços) devem ser garantidos? Quais requisitos de desempenho (cache, velocidade, disponibilidade, eficiência, tempo de resposta e recuperação) devem ser garantidos e/ou considerados? Quais requisitos de usabilidade (ajuda on-line, contextual, dicas, documentação do usuário, estética) devem ser garantidos?

Sexto, você aprende a ter iniciativa e "conversar" com o cliente. Isso acontece em 4 momentos distintos: 1) A partir do momento que você está com o voucher na mão, você tem que entrar em contato (por e-mail) com o cliente (Sun), e pedir para baixar o projeto. 2) quando desenvolvendo, se necessário, você pode tirar dúvidas (por e-mail), se estas realmente fazerem sentido. Este ponto é desencorajado na própria especificação, mas há a possibilidade. Não precisei disso, pois os próprios fóruns já resolvem as dúvidas. 3) Para submeter o projeto, novamente, você tem que pedir para fazer isso. 4) Você tem marcar a prova escrita e, em um centro autorizado, novamente, responder perguntas do seu cliente sobre o projeto.

Sétimo, você aprende a confiar e defender seu trabalho. Isso acontece em dois momentos distintos: 1) ao fazer a prova escrita, como dito anteriormente e; 2) ao escrever o conteúdo do arquivo "choices.txt", onde você deve escrever em detalhes, todas as importantes escolhas de design e códigos que você decidiu implementar. Por exemplo, no meu projeto, eu decidi validar completamente o schema do BD, uma vez que, o usuário pode escolher qualquer arquivo de BD, em qualquer lugar do SO. Isso me fez implementar uma Interface para esse fim, já considerando futuras mudanças no BD, caso o sistema fosse migrado para Web. Expliquei em detalhes essa abordagem no arquivo citado. E, para caso restasse alguma dúvida na explicação (Inglês ainda em evolução ) , criei um diagrama UML (visto via API), onde ilustrava todos os pontos de design defendidos no arquivo supra citado.

Tempo e riscos

Normalmente, a pessoa leva de 2 a 3 meses trabalhando no projeto ou seja, mais ou menos 150 horas de trabalho (considerando uma atuação constante de 2 a 3 horas diárias). Isso porque, é muitos detalhes para ser feito por uma única pessoa, considerando que a mesma, aprecia fazer as coisas bem feitas. Não é fácil. Exige uma dedicação e atenção profunda da pessoa. Isso fica claro na especificação quando diz:
"It is therefore imperative that you pay close attention to any statement using the word "must" in this document."

Então há a possibilidade falhar? Sim. Veja um caso recente e explícito, aqui. Mas casos de falhas são raríssimos, pois ninguém quer torrar dinheiro...

Custos ($$)

Talvez esse seja um ponto a pensar. Muitos se perguntam: será que vale a pena torrar 2 vouchers para essa certificação? Antes de fazer essa pergunta, deve-se pensar primeiro se vale à pena você provar que sabe desenvolver um sistema, considerando os pontos apresentados anteriormente. Se você tem uma "bagagem" que dispensa comentários, talvez não vale a pena. E, se falhar no projeto significa que o custo da mesma aumentará substancialmente, uma vez que precisará de um outro voucher para re-submeter o projeto. Desse modo, ao decidir encarar o projeto, deve-se entrar decidido a fazer a coisa bem feito, para não ter "surpresas"...

Finalmente, vale a pena?

No meu ponto de vista, vale e valeu. Só o fato de a pessoa ter que viver todos os pontos elencados nos itens anteriores, já vale mais que qualquer certificado. Pergunto: onde se aprende isso em uma certificação como SCJP e/ou SCWCD? Nunca! Creio (IMHO) que, essa certificação, teria que ser requisito obrigatório, para quem está começando, principalmente se a pessoa chega em uma empresa, apenas com a SCJP debaixo do braço, querendo ser programador/desenvolvedor de software sério, sem uma "bagagem" consistente anterior.

É isso ai!

Johnny
SCJA, SCJP, SCWCD, SCJD(Relato)
Artur Drummond
Debugger

Membro desde: 13/09/2006 20:58:58
Mensagens: 66
Offline

Parabéns !!!
Excelente seu score !
E gostei das suas dicas e comentários !


SCJP 5.0 (2009)
SCWCD 5.0 (2010)
[Email] [MSN]
 
Índice dos Fóruns » Certificação Java
Ir para:   
Powered by JForum 2.1.8 © JForum Team