『Rubyによる による基幹業務開発 による基幹業務開発』 基幹業務開発』 ~松江市殿での 松江市殿での高額合算 での高額合算システム 高額合算システムの システムの開発を 開発を通して~ して~ 2008. 2008.9.13 ㈱テクノプロジェクト 吉岡 宏 高木 丈智 IPA公募事業 公募事業 ①医療・ 医療・介護高額合算システム 介護高額合算システム 窓口業務 住民異動情報 住民記録システム 住民記録システム 国民健康保険システム 国民健康保険システム (医療保険) 医療保険) 後期高齢者システム 後期高齢者システム (医療保険75 医療保険75歳以上 75歳以上) 歳以上) 介護保険システム 介護保険システム 医療 自己負担額・ 自己負担額・ 資格情報 自己負担額・ 自己負担額・ 資格情報 支給額情報 自己負担額・ 自己負担額・ 資格情報 高額 内部処理 自己負担額合算 支給決定 支払い 支払い登録 口座振替情報など 口座振替情報など 合算 システム 支給額情報 既存業務システム 既存業務システム 相談支援 申請受付 証明書発行など 証明書発行など 介護 支給額情報 今回対象システム 今回対象システム 市 民 高額合算制度 医療・ 医療・介護の 介護の自己負担額が 自己負担額が、所得に 所得に 応じて一定額 じて一定額を 一定額を超したら還付 したら還付をする 還付をする。 をする。 今年4 今年4月からスタート からスタートする スタートする後期高齢者 する後期高齢者 医療保険制度と 医療保険制度と同時に 同時に実施される 実施される。 される。 1年間の 年間の自己負担合計額が 自己負担合計額が対象とな 対象とな るため、 るため、実質平成21 実質平成21年度 21年度から 年度から窓口 から窓口 業務が 業務が開始される 開始される。 される。 IPA公募事業 公募事業 ②Rubyの Rubyの新しい取 しい取り組み 画面からの 画面からのデータ からのデータ登録 データ登録 大量の 大量のデータ処理 データ処理 精度の 精度の高い帳票印刷 再印刷や 再印刷やページ指定印刷 ページ指定印刷 夜間の 夜間の無人運転支援 プログラムの プログラムの保守性向上 高額 少量の 少量のデータ処理 データ処理 合算 COBOLエンジニア エンジニアの エンジニアのシフト システム 今回、 今回、新たに取 たに取り組む分野 基幹業務システム 基幹業務システム( システム(大規模システム 大規模システム) システム)への拡大 への拡大 これまでに実績 これまでに実績のある 実績のある分野 のある分野 設計方式 Ruby ⇒ オブジェクト指向言語 ⇒ オブジェクト指向設計(UML) COBOL ⇒ 手続き型言語 ⇒ 手続き型(構造化)設計 今回 手続き型(構造化)設計 ・・・ 業務フロー図、画面・帳票、機能設計書(詳細) 開発方式 ウォータフォールを採用 ← アジャイルではない。 ウォータフォール しっかり設計をやり、工程毎に顧客レビューを実施 プロジェクト体制 プロジェクト体制 開発期間: 開発期間:2007. 2007.9~2008. 2008.2 オン: オン:14本 14本、バッチ: バッチ:24本 24本 業務開発チーム 業務開発チーム(TPJ: チーム(TPJ:テクノプロジェクト (TPJ:テクノプロジェクト・ テクノプロジェクト・マツケイ中心 マツケイ中心) 中心) 50代SE 2名、30代SE/PG 3名、20代PG 3名 業務分析:顧客要件整理(含む厚生労働省の新制度説明資料) 設計(業務フロー、画面、帳票、詳細機能説明書) 開発(プログラミング、単体テスト、ソースレビュー) テスト(結合テスト、システムテスト=実証実験) 共通技術チーム 共通技術チーム(NaCl: チーム(NaCl:ネットワーク (NaCl:ネットワーク応用通信研究所中心 ネットワーク応用通信研究所中心+TPJ) 応用通信研究所中心+TPJ) Ruby教育、プロトタイプ作成、コーディング規約作成&ソース点検 ツール作成(大量帳票印刷・バッチ自動運用) ライブラリィの組み込みと使用方法整理・・・祝日判定・DB複合キーなど 共通ルーチン 共通ルーチン作成 ルーチン作成( 作成(部品化) 部品化)、開発環境整備 オンライン開発 オンライン開発( 開発(画面) 画面) Ruby on Rails( (機能分割: 機能分割:モデ モデル・ビュー・ ュー・コントローラ) コントローラ) 端末 W E B サ | バ Apache R A I L S 制 御 コントローラ コントローラ コントローラ 業務処理 業務処理 業務処理 ビュー モデル (DB マクロ) データ ベース MySQL ビュー ビュー 画面定義体 画面定義体 画面定義体 ※Ruby on Rails ※ビュー Webの のホームページ ホームページ作成 作成ツール 定義のひな 作成ツールで ツールでHTML定義 定義のひな形 のひな形を作成する 作成する。 する。 ・モデル(DB モデル(DBマクロ (DBマクロ) マクロ) 検索・ 検索・挿入・ 挿入・更新・ 更新・削除の 削除のSQL 画面の ・ビュー( 画面の統一性を 統一性を出すため、 すため、1人のデザイナーが デザイナーが全画面作成する 全画面作成する。 する。 ビュー(画面定義) 画面定義) DBの DBの追加・ 追加・更新・ 更新・削除の 削除の画面HTML 画面HTML プログラマーは 定義に プログラムとの との変数 プログラマーはHTML定義 定義にプログラム との変数を 変数を挿入し 挿入し、ビューを ビューを ・コントローラ( コントローラ(オンライン制御 オンライン制御) 制御) 完成させる フレームを 完成させる。 させる。 フレームを自動生成してくれ 自動生成してくれ、Web してくれ、Webアプリ 、Webアプリが アプリが動くようになる。 くようになる。 レガシー開発 レガシー開発( 開発(画面) 画面) 端末 オ ン ラ イ ン 制 御 メッセージ振 メッセージ振り分け 多重端末多重会話 主 プ ロ 業務処理 業務処理 業務処理 DB アクセス ルーチン データ ベース ネットワークDB ネットワーク 画面定義体 画面定義体 画面定義体 クラサバ3 クラサバ3階層開発 プレゼンテーション層 プレゼンテーション層 アプリケーション層 アプリケーション層 データベース層 データベース層 RDB 業務処理に集中して開発できる環境があった。 オンラインやDBで、予期せぬ動きはない。安心して、開発できる環境であった。 バッチ業務 バッチ業務 必要性 複数部門で 複数部門で利用する 利用するシステム するシステムの システムの場合、 場合、オンライン中 オンライン中に大量の 大量のデータ処理 データ処理を 処理を実行 すると ①オンラインの オンラインのレスポンス悪化 レスポンス悪化 ②排他制御により 排他制御によりオンライン によりオンライン停止 オンライン停止 あるいは ③デッドロックが デッドロックが起こる。 こる。 このため、 このため、大量の 大量のデータ処理 データ処理は 処理は、オンライン終了後 オンライン終了後に 終了後に実行する 実行する。 する。 スケジューリング 他システムとの システムとのデータ とのデータ受 データ受け渡しやバックアップ しやバックアップ、 バックアップ、当日の 当日の登録データ 登録データ一覧表作成 データ一覧表作成など 一覧表作成など の定常処理とその 定常処理とその日 とその日に担当者が 担当者が要求する 要求する特定帳票 する特定帳票の 特定帳票の出力などの 出力などの処理 などの処理がある 処理がある。 がある。 ⇒ 自動的に 自動的に運用したい 運用したい。 したい。実行する 実行する順番 する順番がある 順番がある。 がある。 帳票出力 大量の 大量の帳票出力処理は 帳票出力処理は、特定の 特定のページのみ ページのみ出力 のみ出力したい 出力したいケース したいケースや ケースやプリンターの プリンターのトラブル のために再印刷 のために再印刷する 必要である。 再印刷する機能 する機能が 機能が必要である である。 住民に 住民に渡す帳票なので 帳票なので、 なので、フォームを フォームを使用した 使用した判 した判り易さが求 さが求められる。 められる。 バッチ業務 バッチ業務( 業務(ジョブ管理 ジョブ管理) 管理) 機能 ・バッチジョブの バッチジョブの実行パラメータ 実行パラメータを パラメータを事前に 事前に設定できること 設定できること( できること(オンライン中 オンライン中) ・バッチ処理 バッチ処理の 処理の実行結果の 実行結果の確認を 確認を翌日以降にできること 翌日以降にできること( にできること(夜間自動運用) 夜間自動運用) ツール新規作成 ツール新規作成 バッチプログラムの バッチプログラムの初期処理・ 初期処理・終了処理時に 終了処理時に、自動運用の 自動運用の関数( 関数(サブルーチン) サブルーチン) DB抽出処理 抽出処理 結果リスト 結果リスト出力 リスト出力 JCL ジョブ制御 ジョブ制御 スクリプト ジョブ 管理 運用DB DB更新処理 更新処理 ①JCL ・実行プログラム ・バッチパ 実行プログラム指定 プログラム指定 ッチパラメータの ラメータの対応付け 対応付け ②プログ ・バッチパ ログラム ・ログの ログの書き出し ッチパラメータの ラメータの受け取り ・ワークファイルの ワークファイルの定義(SQL) 定義(SQL) ジョブ管理機能 実行結果の ③ジョブ 管理機能 ・実行結果 の判定 ・バッチパ ッチパラメータの ラメータの事前設定 ・実行結果の 実行結果のログ参照 ログ参照( 参照(ジョブ単位 ジョブ単位) 単位) バッチ業務 バッチ業務( 業務(スプール機能 スプール機能) 機能) 帳票印刷 iReport と ジャスパーレポートの オープンソース、 変換) ジャスパーレポートの活用( 活用(Javaオープンソース オープンソース、フォーム作成 フォーム作成・ 作成・PDF変換 変換) ツール新規作成 ツール新規作成 ジャスパーレポートの ジャスパーレポートの運用管理機能を 運用管理機能を新規作成する 新規作成する。JRuby する。JRubyで 。JRubyで開発。 開発。 Web・ ・アプリサーバ プリントサーバ 印刷制御機能 業務処理 印刷命令 ジャスパレポート Webサービス サービス 非同期通信 PDF変換 印刷管理 帳票出力 スプールDB スプール スプール機能 スプール機能 ・プレビュー ・ページ指定印刷 ページ指定印刷 ・再印刷 ・印刷中キャンセル 印刷中キャンセル ・検索・ 検索・削除 バッチ業務 バッチ業務( 業務(大量データ 大量データ処理 データ処理) 処理) DBバッファ バッファ 遅くなる例 くなる例 A SELECT 顧客マスター 顧客マスター JOIN 取引履歴テ 取引履歴データ SELECT 顧客属性履歴テ 顧客属性履歴データ SUM 年月 プリント処理 プリント処理 B テーブルA,B,Cがそれぞれ がそれぞれ格納順 テーブル がそれぞれ格納順 ではなく、 ではなく、キー順 キー順にアクセスするの アクセスするの で、DBバッファ バッファの バッファの効率が 効率が悪い。 DBへの へのDISK実 実アクセスが への アクセスが多くなる。 くなる。 一覧表 速くなる例 くなる例 SELECT 顧客マスター 顧客マスター WHEN ・・ 出力 a DBバッファ バッファ A B SELECT 取引履歴テ 取引履歴データ 出力 b SELECT 顧客属性履歴テ 顧客属性履歴データ 出力 c C テーブルA,B,Cがそれぞれ がそれぞれ格納順 テーブル がそれぞれ格納順 に検索されるので 検索されるので、DB されるので、DBバッファ 、DBバッファの バッファの 効率が 効率が良い。 DBへの DBへのDISK アクセスが少ない。 ない。 へのDISK実 DISK実アクセスが a b 入力 a 入力 b (a のキーと キーとマッチング) マッチング) 入力 c (a のキーと キーとマッチング) マッチング) : プリント処理 プリント処理 C c 一覧表 バッチ業務 バッチ業務( 業務(大量データ 大量データ処理 データ処理) 処理) DISKアクセス アクセスと アクセスとロジック(CPU) ロジック(CPU)の (CPU)の処理時間比較 ・・・ 数値は 数値は想定値 DISKアクセス アクセス1 m秒程度 = 10× ×10‐ ‐3秒 秒 ← ① アクセス1回の処理時間 : 10m サーチ時間 秒当り 回転=8m秒 秒×1/2)+ )+シーク サーチ時間: 時間:7200RPM(秒当 秒当り120回転 回転 )+シーク時間 シーク時間+ 時間+転送時間 Ruby 100Step Stepの Stepの実行時間 = 100( (Rubyステッフ ステップ (倍)×5( (マシン語 言語1ステッフ ステップ数)×10( マシン語のステップ数 ステップ数/C言語 言語 ステップ ステップ) ×5( (クロック数 マシン語 ステップ ×10‐ ‐9( (秒) クロック数/マシン マシン語1ステッフ ステップ)×0.5× = 12.5× ×10‐ ‐6秒 秒 ← ② ※Rubyは は実測レベル の数倍から 実測レベルで レベルで、Cの 数倍から10倍 から 倍の実行速度である 実行速度である( である(インタプリタ) インタプリタ) ※CPU:2 ×10‐ ‐9秒 秒) CPU:2GHz (1クロックの クロックの時間= 時間=0.5× ⇒ DISKアクセス アクセスと Ruby ステップの 実行速度は1000倍程度 倍程度の がある。 アクセスとRuby100ステップ ステップの実行速度は 倍程度の差がある。 20年程度前 年程度前と 年程度前と現在の 現在の比較 CPU速度 速度 DISK アクセス メモリ 20年 年 MHz 20~ ~40 程度前 (FLOPS) mS MB 現 在 GB GHz 10mS 大量 データ ファイル 数十万 ~数百万 NDB 数千万 ~数億 RDB DB 言語 チューニング 順編成 SEノウハウ ノウハウ ダイナミック ステップ ステップ COBOL PL/I 自動化 SEノウハウ ノウハウ VB,Java Ruby Ruby基幹業務開発 基幹業務開発( 基幹業務開発(生産性) 生産性) ①システム開発 システム開発の 開発の工程別比率 設計工程(30% 設計工程 %)+ +製造工程( 製造工程 PG設計 設計~ 単体テスト40% %)+ +テスト工程 テスト工程(30% 全工程 %) 設計~単体テスト 工程 %) ⇒ 全工程(100% ②Rubyによる による生産性 研修後) による生産性( 生産性(Rails研修後 研修後) 設計工程(30% +製造工程(40% ×1/2+ +テスト工程 ×2/3 ⇒ 全工程(70% 設計工程 %)+ 製造工程 %)× テスト工程(30% 工程 %)× 全工程 %) Ruby on Railsは は、DBの のテーブルを アプリが テーブルを定義すると 定義するとデータ するとデータ操作用 データ操作用の 操作用のWebアプリ アプリが簡単にできる 簡単にできる。 にできる。 テストは テストは手順を 手順を登録すると 登録すると、 すると、自動テスト 自動テストが テストが可能である 可能である。( である。(障害時 。(障害時の 障害時の再テスト・ テスト・レグレッションテスト) レグレッションテスト) ③Rubyによる による生産性 による生産性( 生産性(開発を 開発を終えて、 えて、開発者の 開発者の感想) 感想) 設計工程(30% +製造工程(40% ×3/4+ +テスト工程 ×1/1 ⇒ 全工程(90% 設計工程 %)+ 製造工程 %)× テスト工程(30% 工程 %)× 全工程 %) チェック処理 処理が つのデータ データ登録 登録に 100ステップ ステップ程度 程度の 整合性チェック チェックをする をする。 ・チェック 処理 が多い。1つの データ 登録 に、100 ステップ 程度 の整合性 チェック をする 。 ・自動テスト 自動テスト機能 テスト機能は 機能は、プログラムの プログラムの状態や 状態やデータベースの データベースの状態が 状態が同じでなければ、 じでなければ、使えない。 えない。 短期開発では 短期開発では、 では、わざわざテスト わざわざテスト手順 テスト手順を 手順を登録し 登録し、データを データをバックアップする バックアップする余裕 する余裕はない 余裕はない。 はない。 ・部品化 : 設計中に 設計中に共通部品の 共通部品の洗い出し ⇒ 多くはできない。 くはできない。数個程度。 数個程度。 Railsの 件のデータを 件が部品。 Railsの組み込み部品が 部品が有効。 有効。例)20件 ータを検索表示 → 次の20件 部品。 プログラム修正 修正から から単体 単体テスト テストが スムーズにできる にできる。 ・プログラム 修正 から 単体 テスト がスムーズ にできる 。 ・基本的に 基本的に、1度限りの 度限りの開発 りの開発である 開発である。 である。繰り返しによる部品 しによる部品の 部品の充実が 充実が図れない。 れない。 COBOL開発 開発( は、ほぼ同 開発(ホスト・ ホスト・オフコン・ オフコン・クラサバ3 クラサバ3階層) 階層)とRuby(Rails)は ほぼ同じである。 じである。 Ruby基幹業務開発 基幹業務開発( 基幹業務開発(メンテナンス性 メンテナンス性) 前提 ・基幹業務は 基幹業務は、企業活動になくてはならない 企業活動になくてはならないシステム になくてはならないシステムであり システムであり、 であり、変化に 変化に対応して 対応して 長い期間利用される 期間利用される。 される。ロングライフであること ロングライフであること。 であること。 ・長いシステムの システムの利用の 利用の中では、 では、プログラムの プログラムの担当SEが 担当 が替わり、 わり、メンテナンスが メンテナンスが 継続して 継続して行 して行なわれる。 なわれる。誰でもメンテナンス でもメンテナンスできること メンテナンスできること。 できること。 管理された 管理された開発 された開発 ⇒ 可読性が 可読性が良くなる 標準化= 標準化=コーディング規約 コーディング規約を 規約を厳しく設 しく設ける。 ける。 ソースレビューの ソースレビューの徹底( 徹底(スパゲティ状態 スパゲティ状態にならないこと 状態にならないこと) にならないこと) 豊富な の言語仕様を 豊富なRubyの 言語仕様を制限して 制限して利用 して利用する 利用する。 する。 Ruby: :プログラミングのたのしさ プログラミングのたのしさ (プログラマーが プログラマーが想像力豊かに 想像力豊かに、 かに、自由に 自由に組める) める) 封印 プロジェクトチームによるものづくりの プロジェクトチームによるものづくりの楽 によるものづくりの楽しさ 基幹業務システム 基幹業務システム構築 システム構築 by Ruby Ruby基幹業務開発 基幹業務開発( 基幹業務開発(その他 その他のポイント) ポイント) ①データの データのテーブル名 テーブル名・項目名 : 日本語名称を 日本語名称を使用しない 使用しない = ソースの ソースの可読性が 可読性が低下する 低下する 受給申請者 → jukyu-shinsei-sha 日本語サポート とMySQLは 、Railsも の中に、日本語 日本語サポート( サポート(Rubyと MySQLは単独で 単独でOK、Rails 、Railsもモデルに モデルに事例ナシ 事例ナシ)、 ナシ)、HTMLの )、 名称が 日本語名称” 名称が入るとエラー るとエラーとなる エラーとなる。 となる。 Input-id=“product_日本語名称 日本語名称 ⇒ XHTMLを XHTMLを利用すれば 利用すればOK。 すればOK。 Railsは はテーブル名 テーブル名:複数形、 複数形、クラスは クラスは単数形に 単数形に自動変換する 自動変換する。 する。 例)日本語の 日本語のケース : 顧客 → 顧客s 顧客 英語の 英語のケース : Customer → Customers ②計算精度 : 固定小数点演算を 固定小数点演算をサポートしている サポートしている。 している。 (Rubyと とMySQLで でDecimal属性 属性を 属性をサポート) サポート) 小数点2 小数点2桁目を 桁目を四捨五入し 四捨五入し、小数点1 小数点1桁目までを 桁目までを求 までを求める。 める。 ③データ交換 データ交換 : スペースを スペースを詰め込む関数で 関数で対応。 対応。 レガシーや レガシーや金融機関との 金融機関とのデータ とのデータ交換 データ交換に 交換に固定長の 固定長のデータ形式 データ形式が 形式が必要となる 必要となる。 となる。 ④Ajax :全面的に 全面的に採用した 採用した。 した。 画面の 画面の一部を 一部を書き換える処理 える処理が 処理が多い。画面の 画面のチラツキを チラツキを押さえた使 さえた使いやすい画面 いやすい画面を 画面を実現。 実現。 ⑤コーディング規約 コーディング規約 : インデント( インデント(字下げ 字下げ)、1 )、1行の桁数80 桁数80、 80、メソッドの メソッドのカッコを カッコを必須、 必須、改行コード 改行コードは コードはLF 文字列の (シングル)、 は使用禁止、 記述 など 文字列のクォートは クォートは‘( シングル)、unlessは )、 使用禁止、グローバル変数 グローバル変数の 変数の使用、 使用、SQL記述 ⑥データベースの データベースの主キー : 複合キー 複合キー (複数の 複数の項目を 項目を組み合わせたものを主 わせたものを主キーとする キーとする) とする) 年度+ 申請者番号+ 例) 年度 +申請者番号 +履歴番号 ⑦オープンソースを オープンソースを複数種類組み 複数種類組み合わせた開発 わせた開発は 開発は、初期コスト 初期コストが コストが確実に 確実に安くなる。 くなる。但し、それぞれでバージョン それぞれでバージョン アップをするので アップをするので、 をするので、要注意。 要注意。 ⇒ 実績のある 実績のある組合 のある組合わせ 組合わせ Ruby基幹業務開発 基幹業務開発( 基幹業務開発(COBOL’ COBOL’erの erの復活) 復活) 業種・ 業種・業務ノウハウ 業務ノウハウ ・自治体の 自治体の特性 住民サービス 起算日処理が が必要( 住民サービス ⇒ 起算日処理 必要(申請や 申請や届け出の遅れを取 れを取り戻す) データ修正 データ修正の 修正の記録( 記録(履歴管理) 履歴管理) フォームを フォームを使った判 った判りやすい帳票 りやすい帳票 職員の 職員の定期的な 定期的な異動 ⇒ 他システムと システムと同等な 同等な使い勝手 判りやすさ = 画面の 画面の階層を 階層を浅くする( くする(細かな処理 かな処理に 処理に分けない) けない) = 1つの画面 つの画面が 画面が複雑になる 複雑になる( になる(登録・ 登録・訂正・ 訂正・削除が 削除が1画面) 画面) ・業務の 業務の特性 医療保険や 医療保険や介護保険の 介護保険の自己負担の 自己負担の還付制度と 還付制度と類似している 類似している。 している。 法律のあいまいさ 法律のあいまいさ = 詳細な 詳細な箇所が 箇所が記載されていない 記載されていない = 厚労省との 厚労省とのQAが との がロジック化 ロジック化 基幹業務開発: )のノウハウが 基幹業務開発:ベテランSE( ベテラン (COBOL’er) ノウハウが重要 ホスト・ ホスト・オフコン COBOL中心 中心 クラサバ VB中心 中心、一部COBOL 一部 COBOL エンジニアの エンジニアの復活 ※レガシー: レガシー:過去の 過去の遺産・ 遺産・時代遅れ 時代遅れ Web開発 開発 Java中心 中心 Ruby( (Rails) ITのトレンド ① 70~80年代 年代( 年代(昭和) 昭和) プロプライエタリィの プロプライエタリィの時代 1ベンダ(メーカ ベンダ メーカ)の 技術で全てが提供 てが提供される メーカ の技術で 提供される。 される。 I・F・N・H ハード+OS+ミドル ミドル+言語 ハード ミドル 言語+システム 言語 システム開発 システム開発 ・・・ 高額 ② 90年代 年代( 化の時代 年代(平成) 平成) OPEN化 クライアントサーバシステム(Windows・ ・UNIX・ ・データベース・ クライアントサーバシステム データベース・言語) 言語 プロプライエタリィの サンマイクロ社 オラクル社 プロプライエタリィの世界に 世界にマイクロソフト社 マイクロソフト社,サンマイクロ サンマイクロ社,オラクル オラクル社など サードパーティが サードパーティが参入し 参入し、価格破壊が 価格破壊が起こる。 こる。・・・ 低価格化 ③ 2000年代 年代 オープンソースの オープンソースの時代 LAMP(ランプ ランプ)を アプリの ランプ を活用した 活用したWebアプリ した アプリの構築が 構築が主流となる 主流となる。 となる。 オープンソースを 、Apache、 、MySQL、 、Peal/PHP オープンソースを代表する 代表する製品 する製品: 製品:Linux、 OS・ ・ミドル・ ミドル・言語の 言語の費用が 費用がゼロに ゼロに近くなる。 くなる。 ・・・ 無償( 無償(サポート料 サポート料あり) あり) 但し、システム開発費 システム開発費や 開発費や運用・ 運用・保守に 保守に掛かる費用 かる費用は 費用は、従来通りか 従来通りか一部低価格 りか一部低価格となる 一部低価格となる。 となる。 Rubyは Rubyは、世界に 世界に普及した 普及したオープンソース したオープンソースの オープンソースの中で、唯一の 唯一の国産であり 国産であり、 であり、国の応援がある 応援がある。 がある。 2008. 2008.6.23 JRuby 開発者 チャールズ・ チャールズ・ナッター氏 ナッター氏 松江訪問 Ruby基幹業務開発 基幹業務開発を 基幹業務開発を プレゼン IPA's event (1) Resident registration system National medical insurance system for family National medical insurance system for age 75 and over Return Excess of Payment System Payment , qualification Return info. Payment , qualification Return Excess of Payment Return info. Payment , National long term care qualification insurance system Service over the counter Resident info. System citizen Consultation Acceptance of application Issue the certificate and so on Internal process Calculate the own expenses Decision of an allowance registration of payment Information of account transfer and so on Return info. Target system Already existing system (Almost legacy system on main frame) Back ground Japanese government set new values for payment of medical care and long term care expenses. When total cost of the individual payment is over the standard, return excess of payment. Ruby development in Enterprise System (COBOLer's revival) COBOL programmers they have “Many Business Skills”. rich experience of software development, human network of end users. But, they are older, their technology is legacy. Enterprise system development needs Many Business Skills Main frame COBOL,PL/I CSS 3 layers main VB、partly cobol Web application main Java Ruby( (Rails) Revival of COBOL programmers IT makes explosion of Ruby all over the world on software development Sunset at Lake SINJIKO in Matsue City where Matz lives. 公開ページ : www.tpj.co.jp IPA公募事業成果「高額合算システム」 ITプロ プロの マガ プロのWebマカ マガジン:エンタープライズジン 今日の 今日の日記記事 ランキング 先頭に 先頭に表示 “エンタープライズ開発 のメリット” エンタープライズ開発の 開発の現場で 現場で感じたRubyの じた メリット” http://enterprisezine.jp/news/ The END
© Copyright 2024 Paperzz