月別アーカイブ: 2009年05月

1 post

ソフトウェアの開発 Etc

一般の人は知らないことですが、一つのパッケージソフトを完成させるのには、考えもしなかったことに時間をとられます。

何かの役に立つプログラムを開発するのですから、そのことに時間を取られるのは当然ですが、予想外に時間をとられるのが、マニュアルやヘルプの作成であり、製本やCDのラベルのデザインやパッケージとしての体裁作りです。

その中に、インストールプログラムの作成があります。

ソフトウェアの開発では、開発者が書いたプログラムだけでそのソフトが動作する訳ではありません。Windows等コンピュータそのものを動かしている基本ソフトもそうですし、プログラムの開発に係るソフトもそうですし、場合によってはサードパーティから買い込んだソフトがあって、初めて動作します。

開発環境で動作確認した後、パッケージにしてお客様のコンピュータにインストールするわけですが、このとき早い話が開発環境と同じ環境(内容)をお客さまのコンピュータに構築することになります。

これがことの始まりです。

ソフトは常に進歩しています。同じ名前でのソフトもバージョンがどんどん変わっていきます。ソフトの開発者はそれを余り注意もしないで様々なソフトのご厄介になりながら開発していくことになります。

あるソフトAがCというソフトのバージョン2(今C2と書きます)を使って開発し、AとC2をあるコンピュータにインストールしたとします。続いてソフトBがC1を使って開発し、同じくそのコンピュータにインストールします。

このときCはCなので、C2はC1に上書きされC2はなくなってしまいます。するとAがあてにしていたC2はなくなっているのでAがうまく動かなくなる可能性があります。

さらに悪いことには、何かの都合でBのソフトを削除したとします。このときなにかの不具合で、Bが使っていたC1も削除してしまうと、曲がりなりにもそれをあてにしていたAは動かなくなってしまうという訳です。

多少極端に話しましたが、かってはこのようなことをしていました。

数年前にマイクロソフトは、方針を変えました。コンピュータの中にインストーラというソフトが常駐し、誰かがソフトをインストールしようとすると、このインストーラが交通整理をします。

インストールしようとするソフトの拡張子がmsiでは、このような仕組みでソフトをインストールしています。ところでこのインストールパッケージ(msi)ファイルを作るのが結構厄介です。

msiを作ることをサポートするソフトがありますが結構高価なのです。マイクロソフトもこのツールを出していますが強力ではないので、本気で自分でインストールパッケージをつくるとなると、本気モードでかからなければいけません。