はじめに
Rubyで頑張っている地方都市「松江市」で、エンタープライズ分野でのシステム開発を実施した経験と私のメインフレーム開発やCSS開発の経験から、Rubyのエンタープライズ利用について、まとめてみたいと考えた。
小生、現在55歳。昭和51年(1976年)からソフトウエア開発に携わっており、メインフレームでのオンライン・データベースシステムの開発、特に金融機関の勘定系オンライン開発やアクセス・VBによるオープンシステムの開発、CSSの三階層開発、JavaによるWebアプリの開発などを現場で見てきた。今回、自治体の基幹業務をRubyで開発することになり、非常に楽しい経験をさせてもらうことができた。
顧客企業の受け入れ状況について
Rubyは、Webアプリケーションを中心に利用実績を伸ばしており、楽天やニフティといった大手企業でも採用されている。しかし、一般的な顧客への浸透はまだまだという状況だ。
自治体について言えば、そのほとんどが、地方交付税の削減により厳しい財政状況になっており、システム費用も例外ではない。出来る限り費用の掛からないよう、実績のあるパッケージを必要最小限の改造で導入することが好まれる状況にある。
また、地域住民の情報を扱う基幹業務においては、間違いが許されない。システムのバグやトラブルは、行政と住民との信頼関係を損なうものとなるので、非常に高い品質が要求される点も特徴である。
松江市(松浦正敬 市長)では、平成18年より「Ruby City Matsue」というプロジェクトを立ち上げ、Rubyによる産業振興を進めている。このため、他の都道府県よりはRubyでのシステム構築が推進されていたが、その適用範囲はWebでの情報提供や情報収集などの付帯業務までにとどまっていた。
そんな中、平成19年3月に松江市長より、Rubyに適した基幹業務開発は何かと問われる機会があり、その調査をすることになった。これがRuby開発に触れることとなった最初のきっかけである。
Rubyは、Webアプリ開発では生産性が高いことが注目されており、多くの実績があった。特にスピードが勝負と言われるインターネットのシステムでは、高い評価を受けていた。しかし、基幹業務となるとほとんど実績がないに等しい状況であったことも事実だ。
また、自治体の基幹業務はすでに開発が完了し稼動しているものがほとんどである。いくら基幹業務の開発をRubyで構築したいと言っても、すでに稼動しているシステムを単にRubyに置き換えるだけでは、費用対効果の観点で承認されない状況だと思われた。