今、仕事で弊社の次期リリース製品の新機能について調べている。J2EE関連の新機能なのだが、非常に多機能で、機能を追うのに一苦労。まず、J2EEの関する前提知識がなければならない。ざっと、あげてみても。
- Enterprise Java Beans (EJB) 2.1
- Servlet 2.4
- Java Server Pages (JSP) 2.0
- Java Transaction API (JTA) 1.0
- Java Messaging Service (JMS) 1.1
- Java Naming and Directory Interface (JNDI) 1.2
- J2EE Connector Architecture (J2CA) 1.5
- Java API for XML-Based RPC (JAX-RPC) 1.1
- SOAP with Attachements API for Java (SAAJ) 1.2
など。「ひぇ〜」という感じです。
上記の仕様を知っている上で、弊社独自の機能が加わっているというわけです。
IT業界のスピードは年々速くなっており、それにつれてエンジニアは年々覚えることが増えていくような気がします。昔は、仕様書の全てを読む習慣をつけていたのですが、そんなことをしては、時間が幾らあってもたりなくなってきました。最近は、仕様書は必要最小限しか読まず、仕事上必要に応じて適宜読むようにしています。
また、感じることは、最近のソフトウェアプロダクトはますます巨大化およびブラックボックス化しており、いったんトラブルと解析が非常に難しいですね。
日本の基幹システムに占める外国製ソフトウェアプロダクトの割合はどのくらいなんでしょうか?外資系に勤めていてこんなこと言うのはなんですが、食料の自給率と同様、日本のソフトウェア自給率をもう少し高くしないと、いざというとき困ってしまうのでは?とふと思ってしまいました。
#やっぱ、オープンソースがいいかも…(ボソッ)