開発環境と実行環境

 当初は昨日 4月 10日に我が家に届く予定にしていユーザーの実行環境用マシン。年度末の納品予定は大幅に余裕をもって見積もられていたこともあって、実際には大幅に前倒しされ、先月の下旬には既に僕の家には届けらていた。P3292166 おかげで実機試験だけの予定が、現実には実機での開発作業ということになって僕的にはものすご〜く助かってたりする。

 主な作業は Access 2000版で作ってあるカスタム・アプリの移行と移植・機能追加になるので、そのままの状態で Access 2013にインポートした後、全ての動作が正常か否かを確認してから機能追加分を新規に開発する。
 現環境の MSDB 2.0 ( SQL Server 2000互換 ) 内に蓄積されたデータは、途中 SQL Server 2008 Expressを経由させることで、正常に SQL Server 2014 Expressへ移行できる事は確認してあったので、問題は Access 2000版で作ってあったカスタム・アプリの移行と移植だった。

 当然 Access 2000での開発していた頃はそれ以前の DAOではなく、これからは ADOが主流になると言われていた頃なので、例えばデータを読み出す部分に ADODB.Recordsetで定義していた記述が多量にある。当然、それら全てコンパイルエラーとなったから書き直しを余儀なくされる。
 幸い Access 2000から 2013へのインポートは問題なかったが、先に掲げたプロシージャ内の VBAレベルの非互換を検索し、対象範囲を確認しながら修正する必要がある。それでも、なんとか基本部分の動作は確認できた。

 大変なのは実はこれから。全ての動作確認はホワイト・ボックス。当然全ルートの確認には時間もかかる。
 単純な SQL文も、ちょっとした部分で差異がある事が分かっているけど動かしてみないと判らない部分も多く、テスト自身は難しくはないが単調な繰り返しになるから、仕事とは言え正直かなり面倒臭い。
 それより、もっと切実な問題は開発環境の非互換部分の方で、メニューからリボンによる画面圧迫もそうだけど、例えば 2000から 2013へは画面周りだけでも細々した非互換が多い。目に見える部分だけに顧客チェックが最も厳しい所でもある。
 当たり前だけど、既存のメニュー非表示コマンドは動かないからリボン非表示コマンドを追加する必要があるし、サイドバーも邪魔だから、こちらも非表示にする。関連でツールバーも動作に非互換があるから作り直す。
 機能追加の開発前に、そういった周辺を埋めていかなければいけないけれど、これが意外に時間がかかる。

 なぜなら実行環境はクローズネットなのでインターネット接続は基本的に禁止。ところが外部ネットに接続していないと Access 2013は PF1 Keyによる Helpコマンドさえまともに動かないときている。
 しかるにユーザーの実行環境では Access 2013で追加された新機能を調べることさえ、ままならない状態となるから結局、手元に構築した専用の開発環境、ユーザ先での作業も考慮したノートマシンに外部モニタをつないだ環境での作業がメインとなる。

 当日、現地でのデータ移行もあるので、最終的に VM(仮想マシン)上に 2つの環境を構築することになるけど、それらは最初から予想されていた事態なので、既に MacBook pro上に環境自体の構築は終わっていたから問題はないが、どうしても開発中は試行錯誤の頻度が高くなるから面倒なこと此の上ない。
 サーバーマシンで確認が終わっても、クライアント・マシンは Access 2013 RunTime版を使用するから厳密に言えば動作環境が異なる。当然こちらでも一連の動作確認をする必要がある。仕様上「おそらく正常に動くはず」というのは言い訳にもならない事を僕は経験上、嫌という程知っている。

 もちろん一通りはサーバーマシン上で確認が済んでいるので、クライアントマシン上では主な部分を抜き出しての確認で済む。それだけは助かる。何れにしても、これから 6月上旬の納品に向けての作業なので、あまりノンビリもしてられないんだけど。
 それもあって実機マシン環境を使える期間が前倒しになったのは、本当に助かっている。インストール作業/等の環境作成に取られる時間に余裕が持てたから、ね。

広告

コメントを残す

以下に詳細を記入するか、アイコンをクリックしてログインしてください。

WordPress.com ロゴ

WordPress.com アカウントを使ってコメントしています。 ログアウト / 変更 )

Twitter 画像

Twitter アカウントを使ってコメントしています。 ログアウト / 変更 )

Facebook の写真

Facebook アカウントを使ってコメントしています。 ログアウト / 変更 )

Google+ フォト

Google+ アカウントを使ってコメントしています。 ログアウト / 変更 )

%s と連携中

%d人のブロガーが「いいね」をつけました。