IBMはXMLと関連テクノロジーの検定試験を設けた最初の組織です。XMLの定着度が高まるにつれ、この資格の重要度も高まっており、今では開発者にとって最も人気のある資格の1つとなっています。IBMによれば、この検定試験の目的は、XMLと関連テクノロジー (XML Schema、XSLT、XPathなど)を利用したアプリケーションの設計・実装に必要な知識を身につけた開発者を育成することです。
IBM認定XML開発者にはさらに次のような条件があります。
- XMLの基本を十分に理解していること
- XMLの概念と関連テクノロジーに関する知識を持っていること
- データとXMLとの関連(特に情報モデリング、XMLプロセッシング、XMLレンダリング、Webサービスなどの問題) を理解していること
- W3CのXML関連の重要勧告について熟知していること
- 周知のベスト・プラクティス (最良実施例) を把握していること
この試験は、「IBM Certified Developer -- XML and Related Technologies (Test 141)」というのが正式名称で、導入時から何度も改訂を重ねてきました。現在では、開発者の観点から重要と思えるすべてのテーマが取り上げられています。
これから、この試験に合格するための方法を見ていきましょう。試験問題を解くための幅広いヒント、非常に役立つ参考文献のリンク集、数多くの模擬試験問題集のリンクなど、すべてがスコアを伸ばすための必須情報と言えます。
まずは試験の概要を見てみましょう。この試験には、IBMのTest 141 Objectives サイトで確認できるとおり、次の5つのセクションがあります。
- アーキテクチャー
- 情報モデリング
- XMLプロセッシング
- XMLレンダリング
- テストと調整
各セクションの配点は次のとおりです。
| セクション | 配点 (%) |
| アーキテクチャー | 19 |
| 情報モデリング | 26 |
| XMLプロセッシング | 33 |
| XMLレンダリング | 11 |
| テストと調整 | 11 |
取り上げられるテクノロジーは次のとおりです。
- XML (概念と整形式)
- XSL (XSLTとXSL-FO)
- W3C Schema 1.0
- DTD
- DOM 2
- SAX 2
- XPath 1.0
- Namespaces
- RDBMS
- Xlinks
- XPointers
- CSS
- Webサービス (SOAP、WSDL、UDDI)
- XMLセキュリティー
このテクノロジー一覧は、重要度の高いほうから順番に並べてあります。つまり、試験に合格するには、XML、XSL、Schemaなどのテクノロジーについて理解しておくのが最も重要であり、最後のほうのテクノロジー (WebサービスやXMLセキュリティーなど)はそれほど合否に影響を及ぼさないという意味です。WebサービスやXMLセキュリティーについてはごく基本的な理解で十分ですが、最初の10項目については十分な理解と実践経験が必要です。
この試験は一定のシナリオにそって問題が設定されており、正しい答えが複数存在するようなケースもしばしばあります。そのような場合は、「より合っているもの」、あるいは「よりあてはまらないもの」を複数個解答することになります。この Sun Certified Java Programmer (SCJP:参考文献を参照)などの認定試験よりもやや難度が高くなっています。
合格するには、全57問のうち58% (つまり33問) の正解が必要です。すべての問題の配点は同一であり、試験時間は90分です。受験料は基本的に150アメリカドルですが、それぞれの地域で受験料が設定されている場合もあります。詳細については、IBM Professional Certification サイトをご覧ください。
この試験に合格するには、他の検定試験 (SCJPの試験など) よりもさらに準備が必要です。取り上げられているテクノロジーの種類が多く、設問がシナリオ形式になっているため、難度がやや高くなっていると言えます。人にもよりますが、毎日2時間の勉強をするとして、3か月から6か月の準備期間が必要でしょう。XMLについて一から勉強する人であれば6か月、ある程度の知識があれば3か月ということです。
IBM XML認定試験の受験資格として、何かの予備試験が設定されているわけではありませんが、真剣に取り組むのであれば、やはりある程度の前提知識が必要です。たとえば、プログラムやスクリプトを書くための知識や、コンピューター分野の基本的なモデルやデータ構造についての理解はどうしても欠かせません。特に、XMLに関する実践経験があればかなり有利です。XMLは、オンライン/オフラインを問わず、さまざまな種類の文書に幅広く利用されているため、ブラウザー、クライアント/サーバー、書式設定/スタイル設定などの概念についても熟知している必要があります。さらに、電子商取引に関連した以下のようなプロセスについても十分に把握しておかなければなりません。
- オンラインで注文を受け取る
- 注文に応じる
- インターネット上で決済する
- 供給業者や顧客とデータをやり取りする
- 在庫情報を管理する
試験合格のために必要な知識の詳細については、IBM Certified Developer - XML and Related Technologies のサイトをご覧ください。
ほとんどの設問はシナリオ形式になっているので、各アーキテクチャーの制限や機能を比較分析し、特定のシナリオにそれぞれがどれほど適合しているのかを見極める必要があります。したがって、アプリケーションの設計と実装にかかわる経験が不可欠です。さらに、データ処理を中心としたアプリケーションではデータ構造が重要な役割を果たすので、データベースに情報を格納する方法、それぞれの情報を相互に結び付ける方法、さらには情報間にどんな関連を持たせるかといった点についての明快な理解も必要になります。
XMLの初心者であれば、優れた参考書や基礎的なチュートリアルや記事などで概要をまずつかむようにしてください(参考文献を参照)。XMLと関連テクノロジーは数多くのテーマにかかわっているので、段階的に取り組んでいく必要があります。ここに挙げたほとんどの資料はそれほど複雑ではありませんが、さまざまなアプリケーションでXMLを利用する方法やそのメリットを十分に理解するには、それなりの時間がかかります。Elliotte Rusty Harold氏の「XML Bible」(参考文献を参照) は、そのような入門書として好適です (邦訳は日経BP社の「XMLバイブル」)。
XMLの基礎を学んだら、実際にアプリケーションを開発しながら、XMLを利用するための「勘所」をつかむようにしてください。そのためには、「Professional XML, 2nd Edition」(参考文献を参照)などの専門書を参考にできます (初版の邦訳はインプレスの「プロフェッショナルXML」)。これはまさにこの認定試験にうってつけの本と言えます。もちろん、この試験のために書かれた本ではありませんが、該当するテーマをすべて取り上げており、しかも詳細情報を適度に示しているのが特徴です。この本を徹底的に勉強し、特にサンプルに注目しながら、XMLの利用法やそのメリット/デメリットをしっかり把握するようにしてください。また、フリーのツールやIDEの入手先も紹介されているので、それらのツールを利用して、その本のサンプルによく似たサンプル・アプリケーションを自分で作成してみるとよいと思います(もちろん、それらのツールは日常の仕事でも十分に活用できます)。この試験に合格するには、このような実践経験がどうしても必要だからです。
このようにして「Professional XML」の勉強が終わったら、準備がほぼ整ったことになります。あとは知識をさらに磨いていきましょう。そのためにお勧めしたいのは、Web上に用意されているさまざまな記事やチュートリアルを調べてみることです。この段階でW3Cの仕様書を実際に読んでみるのは特に役立ちます。試験前にすべての仕様書に目を通すことが絶対に必要だというわけではありませんが、いろいろな用語をしっかり把握した状態で仕様書を読んでいけば、細かな点の理解度や概念の把握度がいっそう高まるに違いありません。
ここまで来たら、あとはひらすら実践あるのみです。XMLのサンプル・アプリケーションをできるだけ多く作ってみましょう。XMLのさまざまな応用例について読みましょう。いろいろなアーキテクチャーの中でXMLを活用する方法について、同僚と話し合いましょう。各種のXML関連テクノロジーのメリット/デメリットを調査しましょう。たとえば、次のような点が研究テーマになります。
- SAXとDOMを比べた場合、それぞれに向いている状況と向いていない状況はどんなものか?
- DTDとXML Schemaを比べた場合、それぞれに適した使用法と適していない使用法はどんなものか?
- DTDの限界を乗り越えるためにXML Schemaをどのように活用できるか?
- HTMLのリンクに比べて、XLinkにはどんなメリットがあるか?
- CSSに比べて、XSLにはどんなメリットがあるか?
- XSLにはどんな機能があるか?XSLが他のスタイル言語よりもはるかに強力だと言えるのはなぜか?
ここで重要なのは、単に理論として研究することではありません。実際のアプリケーションにこれらのテーマがどのような影響を及ぼすのかを自分で体験するということです。単なる理論だけでは、シナリオ形式の設問に対応できないかもしれません。
最後の段階では、模擬試験問題を実際に解いてみましょう。私が用意した模擬試験問題集を手始めに、できるだけ多くの問題を解いてみることです。有料の模擬試験にいくつか挑戦してみるのもよいと思います。もちろん、IBMの模擬試験は絶対に欠かせません。参考文献に模擬試験のリンク集が紹介されているので、弱点の見極めと強化にぜひ活用してください。弱点を思い知らされるというのは確かに愉快なことではありませんが、本番が思わしくない結果になるよりは、前もって弱点を見極めるほうがはるかにましです。そのような弱点を強化するには、だれかに有料で指導してもらうのも一つの方法です。特に上記の重要テクノロジーのかなりの部分で自信がなければ、それが一番良いかもしれません。
この試験の制限時間は90分です。多くの受験者が言うには、これがちょうどぴったりの時間になっているようです。ほとんどの受験者は70分から80分ですべての問題を解いており、見直しの時間はほとんどありません。したがって、最初から正しい解答を出すように全力を尽くす必要があるということです。模擬試験で高得点を得るようになり、上記のほとんどのテーマに関して自信を持てるようになったら、XML認定試験の準備が完全に整ったことになります。
試験対策として細かなヒントと注意点を最後にまとめておきましょう。
- 1つのテーマを研究するときに、細かな点にこだわるよりも全体像をつかむようにしましょう。ほとんどの試験問題は概念の「理解度」を試すものであって、構文に関する細かな知識を試すものではありません。たとえば、XMLアプリケーションの各構成要素のかかわりとして、次のような点を理解するようにしてください。
- 各構成要素がどのように全体にかかわっているのか?
- どの構成要素がどんな役割を果たしているのか?
- Webサービスにはどんな構成要素があるのか? それぞれがどのように全体として機能するのか?
- すべてのテクノロジーの使用法を実践的な観点から確認してください。概念について読むだけでは不十分です。実際にサンプル・アプリケーションを作成することがどうしても必要になります。次のような観点から各テクノロジーの機能を実際に確認するようにしましょう。
- XPathの照会からどんな結果が得られるか?
- XSLのスタイルシートをXML文書に適用すると、どんな出力が得られるか?
- SchemaやDTDに照らしてXML文書を検証すると、どうなるか?
- XLinkを使うと、リンク用文書の管理がどれほど効率的になるか?
- 各テクノロジーをばらばらに研究するよりも、それぞれを比較しながら、メリット/デメリットを把握するようにしましょう。たとえば、DOMとSAX、XSLとCSS、DTDとXML Schemaをそれぞれ次のような観点から比較してみてください。
- DOMとSAXを比較した場合に、それぞれに適している状況と適していない状況はどのようなものか?
- XSLにできてCSSにできないどんなことがあるか?
- DTDのいろいろな制限をXML Schemaはどのように乗り越えているか?
- DTDと比べた場合のXML Schemaのメリットはどのようなものか?
- XMLと関連テクノロジーの機能だけではなく、実社会でどのように応用できるか、従来の手法にどんな変化が起きるかといった点に注目してください。たとえば、次のような点が研究テーマになります。
- 供給業者や顧客との連携にかかわるコストをXMLによってどのように削減できるか?
- 顧客がさまざまなプラットフォームやさまざまなデバイスを使用している場合にも、XMLによって情報の共有がいかに容易になるか?
- Webサービスの本質的な価値は何か?
XMLが幅広く普及しているのは明らかです。それに伴って、XMLに関する特殊技能を持った技術者の数も、XMLに関連したテクノロジーの数も増え続けています。確かに、この認定試験はやや難度が高く、他のテクノロジーに比べて参考文献の数も限られていますが、かなりの数の技術者がすでに合格し、この資格の人気が高まっているのは事実です。IT業界はこのところ停滞気味ですが、やがて再びかつての勢いを取り戻すことでしょう。この試験に合格するのは、事前に対策を講じた人です。今こそ意欲を高め、計画を立て、この認定試験に取り組んでみてください。
ご健闘を祈ります。そして何よりも、楽しむことが一番です。
- 「Professional XML 2nd edition」は、関連する重要なテクノロジーをすべて網羅し、概要だけでなく詳細情報も適度に示しており、認定試験という観点からして必読の書と言えます(初版の邦訳はインプレスの「プロフェッショナルXML」です)。
- 「XML Bible」は、入門書として好適ですが、この本だけで試験の準備をするのは無理でしょう(邦訳は日経BP社の「XMLバイブル」です)。
-
W3Schools.comには、幅広いテーマに関する非常に優れたチュートリアルが用意されており、勉強時間の短縮に役立ちます。
-
ZVON.orgにも、XML関連の優れたチュートリアルや記事があります。
- Doug Tidwell氏のdeveloperWorks チュートリアル、「Introduction to XML」(2002年8月) は、初心者がしっかり学ぶための基礎になります。
- Pradeep Chopra氏は、「An SCJP 1.4 certification primer」(developerWorks、2002年10月) という記事も書いています。
- Venu Vasudevan氏の「A Web Services Primer」では、このテーマがさらに詳しく説明されています。
Webサイトと関連団体
- IBMのRecommended educational resources サイトでは、この試験のための参考文献を紹介しています。
-
W3C (World Wide Web Consortium) はXML関連資料の宝庫であり、すべての仕様書が用意されています。
-
Javaranch というディスカッション・グループでは、だれかの役に立とうとする人々が非常に活発に活動しています。
-
XML-CERT もディスカッション・グループですが、こちらはXML認定試験を専門に扱っています。
-
saxproject.org には、SAX (Simple API for XML) に関するありとあらゆる詳細情報があります。
- developerWorksのXML zone には、XMLと関連テクノロジーに関するチュートリアル、記事、コラム、ヒントが幅広く用意されています。
-
XML.com はXMLコンテンツに関する最も権威あるサイトの1つです。
-
XML.org はXML開発者のコミュニティーであり、質の高いXMLコンテンツを提供しています。
-
PerfectXML.com も良質なXMLサイトです。
-
XMLpitstop.com もまた良質なXMLサイトです。
-
XML WebRing は、XMLサイトのリンク集として便利です。
実践的資料
- この記事の著者は、IBM XML認定試験とよく似た模擬試験問題集を用意しています。
- IBMのPre-Assessment/Sample Test は、多項選択方式の無料の模擬試験です。
-
XML Spy は、非常に優れた商用のXML用IDEです。
-
Apache のサイトには、XMLに対応した非常に優れたツール群が用意されています。