今天,2005年4月9号中午,我通过了Sun的系统架构师考试(SCEA)的310-051部分。总成绩72%(很勉强,及格线68%)。面向对象概念、EJB、设计模式、消息、国际化等部分都对了80-100%;通用架构、遗留系统连接、EJB容器、协议、J2EE应用、安全等部分只有50-66%左右的正确率。 但好歹整体是pass,否则又浪费银子了——1250RMB实在太贵。就在昨晚,老公明白我今天就要考试,马上表达了他的不满: 第一、 他认为我准备不够,肯定pass不了,简直是浪费银子。 第二、 他认为我那么早考过,就不会接着深入学习,很快会忘掉这些知识滴。
但我今天早上还是在他极不看好的抱怨声中去考试。第一道题就是又臭又长的遗留系统连接题,这些电脑屏幕上的英文马上让我的脑袋轰地晕了。所以接下来我一直是在极度紧张晕乎乎的情况下考试的。 臭长的情景题目奇多,我以为时间不一定够,心情紧张地完全影响了我做题效果。但我依然30分钟左右把48个题目全部做了一遍。然后再用25分钟左右仔细检查了一遍,特别仔细研究那些臭长的题目,所有题目全部用排错法选一次答案,但被重新选择答案的题目不超过5个。剩下20分钟左右时,又开始重新过一遍,但做到第34时,整个考试就over了,打印机就刷刷刷打印成绩。我没看到屏幕上的成绩提示,很着急,马上直接去看打印机吐出来的纸,直到看到成绩是pass,才知道这1250块是没有浪费掉。 从考场出来,恰好老公打电话来汇报他酒店的房间可看海景。我告诉他我过了,并埋怨自己备考方向不十分正确导致成绩不算良好。他很意外我通过了没有浪费钱;然后打断我详细的成绩汇报,叫我不要太得意。
其实,我觉得如果备考得当,是很可能拿到80%的。但现在根本没有什么书能完全覆盖了Sun的考试范围,也没有很update的guideline。通过这次实战,我觉得我知道了Sun的真实考试范围,因此觉得有必要整理出来,让后来者少走弯路。 我认为有三个资料是大家主要应该关注的。 1.《J2EE学习指南-Sun certified enterprise architect for J2EE (Exam 310-051)(英文版)》,一定要读英文版,因为考试是英文。Paul R.Allen,Joseph J.Bambara 人民邮电出版社。 这本书粗看是覆盖了SCEA全部大纲,但其实很多真正考试内容没涉及,比如遗留系统连接、安全、集群、负载平衡。而遗留系统连接部分,最新的JCA并没有考,考的还是Screen Scraper及Corba等综合技术连接各种复杂的遗留系统。其他内容,该书也写的很罗索,不精炼。 2. 《Sun Certified Enterprise Architect for J2EE Technology Study Guide》Prentice Hall 著,作者是Sun的,该书接近于Sun的官方资料了。 这本书很好,简洁、扼要,非常适合最后冲刺阶段使用。但缺点是完全没有消息、遗留系统连接等内容。但是设计模式、协议、安全等部分相当好,至少比《J2EE学习指南》好。集群、负载平衡等部分,这本书一样没涉及。 我自己翻译了这本书的中文简版,如果想对J2EE入个门,可以参考。但最好读原文。连英文技术资料都看不懂的人,我想绝对通不过这个考试的,考试中的情景题都是很长的英文。 3.yahoo讨论组上的资源,有最接近Sun考试范围的资料和题目,是考80%的最好保证。 scea_j2ee http://groups.yahoo.com/group/scea_j2ee scea_prep http://groups.yahoo.com/group/scea_prep 特别推荐的是《Java Architect Notes - Balaji.doc》和《SCEA Practice Questions1.zip》及其他类似电子文档。 Balaji等人的笔记,更符合Sun实际考试的内容,比以上两本书更贴近考试范围。比如其中提到的集群、负载平衡、遗留系统连接等技术,今天我都被考到,而且我都没考好。因为之前我一直以为出版的书更可能贴近考试,而我对上面两本书的知识点都掌握到90%。但我接触yahoo的资料很迟,对这些资料跟那两本书的不同很怀疑,怀疑yahoo的资料不正确。但实际考试告诉我,yahoo的资料更正确。 《SCEA Practice Questions1.zip》这些题目,多数跟Sun考试接近,特别是安全、遗留系统连接、集群、负载平衡等情景分析题,J2EE应用分析题等。但那些很detail的,接近编程的题目,可能不会考。而且这些题目的结果分析部分特别详尽,非常有利于让你处理J2EE选型等情景题目。 尤其是其中部分题就基本重现在我今天的考试中,那些关于集群、负载平衡、J2EE应用分析的情景题。如果再考一次,我发誓我会把yahoo group中的题目用心重做一遍。那样我绝对可以拿到80%了。
我觉得SCEA考试是一个覆盖面很广的东东。备考的过程中,绝对可以优化、充实自己的技术知识。比如通过这段时间的学习,我觉得我更了解J2EE及实际系统选型,也学会了设计模式。之前我基本是设计模式盲,现在我却可以历历数出各模式的特点,甚至有更深入研究的兴趣。我觉得备考SCEA是学习更多知识的方式,而考试结果只是附加的回报。
备考时间和步骤建议: 先介绍本人的背景和准备时间。 本人具有多年J2EE工作经验,很早学习OOA、J2EE,很早就深入学习、模拟过pet store的framework。工作中的项目有很多practices及EJB pattern,但这个很好的framework我没参与设计。 大概是去年(04年)11月初左右有了考SCEA的想法。然后买了上面提到的《J2EE学习指南》。在年前看完了这本书,同时就着《设计模式(中文版)》、《设计模式和Java》等书,对设计模式入了门。原来想年前考,但工作突然趋紧,加上要过年、写网络小说、看小说,就把考试计划推迟到年后。 过了年,又因为分心去“研究”宏微观的经济、管理及把手头长编网络小说over掉,也就不敢贸然考试。但工作轻松,所以还是花了很多时间学习SCEA。 进入三月下旬(20号之后),我的SCEA冲刺阶段开始了。反反复复看前面提到的两本书和设计模式,终于把设计模式给吃下了。一直到三月底,才接触到Balaji的《Java Architect Notes》,做yahoo上共享的题目。做题结果很惨,正确率只有50%左右。所以很快发现自己在情景题、安全等方面的不足,并力补之,同时花了2天半,把《Sun Certified Enterprise Architect for J2EE Technology Study Guide》翻译了一下。 到了4月2号,我决定报名9号考试。然后又把那2本书看一编,把《SCEA Practice Questions1.zip》等数百套题过一遍。6号交钱报名。7号下午通过作题,就发现自己不是很行。8号打印Sun的考试大纲,发现有些地方要加强。但最后认为安全、遗留系统连接、集群、负载平衡等比率不多,幻想Sun不会考那些DNS集群机制等题目,所以还是决定去考试(已经报名了,也不可能推迟)。可是9号考试的时候,心理很明白准备不充分,因此考试特别紧张。但谢天谢地,我面向对象概念、EJB、设计模式、消息、国际化等扎实的底子和yahoo资料给我的遗留系统连接、集群、负载平衡的粗浅印象,到底还是让我pass了。
要说明的是,我全部是工作时学习,根据工作强度,每天有0-7个小时学习。周末和晚上是不学习的。周末用来办事、逛街、去公园;晚上用来上网。
我觉得准备SCEA的时间因人而异。对于普通水平,如我,若集中学习,2-3个月够了;对于更高水平,1个月甚至更短也行;对于水平更差,我想4-6个月都可能。
最后要强调的是英语。这个考试有接近50%是臭长的情景题,还是多项选择,如果基本英语要求都达不到的人,可能连正确理解题目都困难。而另外那些简短的题目,偶尔也有一两个不认识的关键的单词,这绝对影响作题,因为那会让你不知道整个句子的概念。我考试就遇到1-2个这样的题目其中各有1个不认识的关键的单词。我很怀疑通用架构、J2EE应用部分我得分过底就是因为这个原因。 搞定英语,我觉得只能是基本只看英文资料和做英文题目。我的英语底子一般,也就四级水平,工作是纯英文,近两年除了小说、新闻看中文的,其他只看英文。但我的英语还是稍微影响了我的考试,至少我是这样认为的。
以上是我考后的感想。我觉得yahoo上的资料最符合sun考试范围的;但那两本书应该是主要的学习基础。如果EJB不熟的人,其他一些EJB书籍都很必要。
如果大家希望有个学习计划的参考,我建议是: 1.先学《J2EE学习指南》和其他的有名的EJB书籍(一本网上最著名、最流行的就行了)。这个时间应该1个月左右。 2.再学习《Sun Certified Enterprise Architect for J2EE Technology Study Guide》。 3.然后学习Balaji的笔记。 4.打印Sun的考试大纲,逐条检验知识点。 考试大纲 http://www.sun.com/training/catalog/courses/CX-310-051.xml 5.做yahoo上的《SCEA Practice Questions1.zip》等题目。 6.考试前2天,根据做题经验,结合考试大纲,再逐一根据各知识点复习。 7.考试时,也许第一个题目就是很长的英文题。不用被吓着,稳定心态做下去。你会发现后面那些简短的题目几秒钟就可以搞定一个。你肯定有时间回头检查的。
310-051只是系统架构师的第一步,后面还有Assignment (CX-310-300A) 、Essay Exam (CX-310-061)两步。我不知道我什么时候会考,考试费太贵了(全程5000),最好能找个地方报销。我更看中学习过程及实际掌握的知识,考试的结果,尤其是证书,天晓得有没有用。但第一步应该是最难的一步,选择题考过了,剩下两步应该更容易。也许我会去考,如果考过了,如果有经验,我一样会来分享的。考虑到第一个1250花出去,我老公可能会催我考下去,他会觉得既然花钱了,那么搞个证书才合算。哈哈!
我所能帮大家的,上面已经说过了。如果大家还要问,通过fancyhf@163.com好了。同时介绍下我的网站http://fancyhf.mblogger.cn,上面不但有我学习J2EE的笔记,还有我的原创小说、随笔等。 |
==============
Java 2企业版本(J2EE)体系是众多主要企业网络服务器产品的基础,当然微软产品除外。利用J2EE的规范,Sun的目标是确保不同网络程序能够运行于任何J2EE兼容的服务器。这对开发人员非常有好处,因为它能够让拥有Sun认证企业设计师证书(SCEA)的技术适用于不同的平台。
SCEA证书是一种软件体系,拥有这一证书的开发人员能够设计出J2EE程序的结构,并特别很熟悉使用J2EE的特性来建立灵活,可升级,安全的设计。SCEA表明它的拥有者能够处理高级的设计,在程序开发中起着重要作用。为了获得成功,SCEA投考者必须具备对正确使用现代设计方法和当前商业化的J2EE技术有着很深刻的理解。
SCEA的基本知识
对于开发人员,如果想要通过SCEA考试,他们必须能够理解和交流高水平的设计概念。所以,SCEA证书强调于设计的概念,而不是传统具体的APIs。
特别的,SCEA有两大设计概念——统一模型语言(UML)和设计模式,这两大概念都得到特别的重视。UML是绘制面向对象设计的图表,然后文档化,再在设计过程中使用图表,最后组成一个系统。UML是从很多设计方法进化并综合,然后变成对象管理组(OMG)。
SCEA证书使用一本很有影响的书籍中的术语来强调设计模式,这本书籍为:Design Patterns: Elements of Reusable Object-Oriented Software(设计模式:可重用面向对象软件的原理)。这本书彻底改变了编程的思想,特别是描述可重用程序设计的使用模式。这一本书后来又发展为好几本相似的书籍,但对于SCEA,你只需要对原版书籍的内容熟悉就足够了。
获取SCEA证书的步骤
获取SCEA证书需要完成以下的三个步骤:
选择多种方式的考试(CX-310-051; 在美国是$150)
完成一个设计工程任务(CX-310-300A; 在美国是$250)
上交评论考试(CX-310-061; 在美国是$150)
第一种考试可以在Prometric考试中心完成。它包含48个问题,必须在75分钟完成,以68分及格(100分制)。这些问题都涵盖了Sun Certification中提及的和以下总结后的详细内容:
概念——UML图表及面向对象设计原理
通用体系——多种程序体系的不同的推论结果
与继承系统相关联——选择一种合适的技术
企业JavaBeans (EJB) ——利用EJB设计和选择合适的EJB技术
企业JavaBeans容器——一个EJB容器的功能
协议——在给定的假设选择合适的协议
J2EE——在给定的程序里识别正确的J2EE技术
设计模式——选择正确的设计模式并正确使用以上提及书籍中的模式和术语
消息——在给定的程序中识别正确的消息
国际化——广泛地识别J2EE特性
安全性——正确识别J2EE的使用特性
在第二步骤,你必须使用学生ID从考试网站中下载一些设计任务练习。这是设计训练,并不是程序训练,所以你不需要建立一个完整的程序,并且也没有时间限制你完成这些训练。
在提交设计训练之后,你即可返回Prometric测试以参加最后的步骤。这一部分包括四个评论问题,你必须在90分钟内完成。这些评论的回答需要你广泛的设计经验。这一部分以70名及格(100分制)。
软件设计专业人员和高水平的Java开发者越来越觉得SCEA非常有价值,因为这一证书将逐步被广泛地得到领域上的认可和接受。
SCEA考试的资源
对于SCEA考试的更多资源,你可以参见:
Sun对考试过程的描述
与Whizlabs连接的有关SCEA资源