
![]() |
UMLによるエンタープライズJava開発 |
JavaTMは当初、動的なWebコンテンツを作るためのプログラム言語として私たちの前に登場しました。その後J2EE(Java2 Platform, Enterprise Edition)をはじめとする多くの分野で進化を遂げ、現在では大規模でミッションクリティカルなWebシステムの基盤として主役の座を占めるようになりました。J2EE仕様には、過去数十年にわたって多くの先人たちが実践し蓄積してきた、トランザクション管理、データベース接続、セキュリティ、分散オブジェクト通信、リソース管理といったシステム構築のためのさまざまなノウハウが含まれています。
いっぽう、以前は比較的限られた分野で利用されてきたオブジェクト指向技術も、Javaの普及にともなって急速に身近なものになってきました。オブジェクト指向技術は、カプセル化、継承、ポリモーフィズムをサポートするプログラミング言語としてスタートしましたが、表記法としてのUMLTM (Unified Modeling Language)や、優れた設計のノウハウを体系化したデザイン・パターン、リスクを低減しながら段階的に開発を進めていく開発プロセスなどが整備され、今では拡張性や再利用性の高いアプリケーションを開発するための総合的な技術となっています。
これら2つの技術を組み合わせれば、強固で信頼性の高い実行環境上に、柔軟で拡張性の高いアプリケーションを構築することが可能になります。しかし現実には、COBOLやCのような手続き型言語と同じ手法でJavaを利用し、単にミドルウェアとしてJ2EEを利用する、といったケースは決して少なくないようです。それどころか、短納期開発を理由に、要件収集や設計、技術評価といった重要な作業をおろそかにして、やみくもにプログラミングを始める無手勝流さえ横行しているようです。そうしたやり方では、納期どおりにユーザーが期待する品質のシステムを完成させることはほとんど期待できません。仮に運良くシステムを完成できたとしても、実際にはそれで終わりではありません。ユーザーにとって有効なシステムであればあるほど、あとからの仕様追加や変更要求が発生しますから、変化に対応できるシステムでなければすぐに陳腐化してしまいます。オブジェクト指向やJavaは確かに強力な道具ではありますが、その道具をうまく使いこなせなければ期待する効果は決して得られません。
本書『UMLによるエンタープライズJava開発』(原題:Enterprise Java withUML)は、そんなテーマに応えようとしたC.T. Arrington氏のまさに労作です。「タイムカード・アプリケーション」(勤怠管理)を例題に取り上げて、エンドユーザーへのヒアリングから、分析、技術選択、アーキテクチャー設計、アプリケーション設計、実装までの手順や考え方を網羅的に記述しています。単なる一般論としての技術解説だけでなく、ユースケース記述、クラス図、シーケンス図、Javaコードなどのサンプル成果物も豊富に掲載されており、読者が実際のプロジェクトを疑似体験できる内容に仕上がっています。
原題:Enterprise Java with UML [ JOHN WILEY & SONS INT'L RIGHTS, INC. ]
