Ognacの雑感

木漏れ日々

目次

Blog 利用状況

書庫

ギャラリ

新版の製品の普及と旧版の維持

ネタ元: ここ
(ネタ元と趣旨は異なるのですが)
VistaとかVS2008などの新OS/新環境が普及しないという話は、我々視点の話だと思うのです。
もちろん、新版での仕事がしたいですが、現実はそうはなりません。
新版は便利な機能が付加されてますし、新概念が使え、バグフィックスされているので、良いことづくめに感じます。
新技術を乗せるために互換性を犠牲にしているのも事実です。オープン系はレガシー部分を犠牲にして、昇華する道を進んでます。
# 汎用機系は逆に上位互換に拘ります。30年前のExe/ソースはそのままで動作することが要求されます。
それが、置換を促進する程の魅力になるか別です。
置換しない理由を幾つか考えて見ますと。
・新機能を必要としない。
・新機能を知らない。
・旧版で充分、用が足りている。
・新版のセキュリティを含む実行問題の検証が追いつかない。
・現システムが旧版で作られているので、根っこから作り替えないと、置換は無理
・動作してもUI上の配置やコントロール内の表現が切れたりするのは動作しているとは言えない。
もっと理由はあるのでしょう。

地デジもHDDビデオも、我々興味ある人には、仕組みがすんなり理解できますが、興味の無い人には、知られてません。
意外感がしますが、地デジに切り替わる事は、周知徹底されてないようです。しかし、物理的に地デジに切り替わるので、置換せざるを得ません。
ソフトシステムは、環境が潰れなかったら、使い続ける事が可能です。 「Win3.1+ VB2.0」「J-DOSシステム」 という化石システムが現存していたり、Win9x 環境が残っていたりします。 Win2000もあちこちで現役です。
 幸か不幸か、Webアプリでは ASP.NET 1.0/1.x が結構普及したためか、大手のシステムの中には、FrameWorkを2.0に切り替えられない現場もあります。(私も先日、ASP1.1の保守仕事がまありました。)

一度普及してまったら、強いですね。バージョンアップをも抑制してしまいます。Cobol/Fortranが残っているのに後発の PL/Iが目立たない。VBAがなくならないで.netの足かせになっている面もあります。
製品寿命は製品性能ではなく、普及度と営業力に左右されます。

開発業者の中には自前のFrameworkを作って、生産性を向上を計りますが、完成度が高いほど、VSやOSのバージョンアップに対応できず、それが足枷になるという、皮肉な状態に陥るケースがあります。
 新人教育で Win2000/XP下でVS2003を教えている現場もあります。
Window7/VS2010の世界が近づいていますが、開発現場や利用現場との乖離は大きくなっていく気もします。

新機能は、必須だと考えているのは、我々開発者であって、現場では、「新OSを使いたいのではなく、業務が遂行できれば良い」という堅実もあります。「DOSアプリでも用は足りる」とも言えます。「新機能は便利だ」と考えるのは、一方通行の視点かもしれませんね。

投稿日時 : 2008年12月8日 0:40

Feedback

# re: 新版の製品の普及と旧版の維持 2008/12/08 6:59 ネタ好き未記入

お客様にとっては、長期間使い続けることが帳簿上利益になりますからね。
発注する際には大体3年ぐらいで損益分岐点に到達するようにしているようです。
ですからランニングコストがレガシーシステムを大きく下回るようにするか、使い続けることのデメリットを説得力のある形で提示しなければなりません。

# re: 新版の製品の普及と旧版の維持 2008/12/08 9:34 はつね

> DOSアプリでも用は足りる

もし、それが本当ならば、それでいいのではないかと思います。でも、分析してみるとそんな事はなくて、普通にWordやExcelのデータとの連携がCopy&Pasteレベルでもあったりと、Windowsの操作性前提で「DOSアプリで」といっている場合も多いようです。

クセモノなのは「業務が遂行できれば」という部分であり、例えば、新開発環境で標準装備な機能を旧開発環境で手作りしていれば両者は同等のように見えますが、手作りした部分の費用や今後のメンテナンス費用、ノウハウの継承など直ぐには思いつかないような隠れコストも多いと思われます。

お客様にとっては、まさに業務が遂行できればよいのであって、開発環境が古いのがいいのでもないというところが難しいところですね。当たり障りがない提案であれば既存開発環境を踏襲となりますが、それが正解という訳ではないのが難しい。

# re: 新版の製品の普及と旧版の維持 2008/12/08 9:48 aetos

先日までやっていた仕事は、クライアントがVB6でサーバがLinuxのCでした。
サーバはともかくとして、クライアントがVB6だった理由は、親請け会社のミドルウェアのコードジェネレータがVB6しか対応してないからとか、そんな理由なんじゃないかと推測しています(そのジェレネータがまた、アプリの要求を全然満たせなくて、ジェネレータ自体を改造して対応したこともあります。もうあのジェネレータを使う仕事はしたくありません)。
もちろんデータバインドなんてありません。

顧客の現システムがDOSで動いているので、VB6でも、フォームの下のほうにファンクションキーを模したものが並んでいました。
「現場ではマウスは使わないから、全部キーボードで操作できるようにしてほしい」という要望はありましたが、それはショートカットキーをちゃんとつければいいということではなく、ほとんどのGUI部品を使わないということを意味していました。使っていいのはラベルとテキストボックスくらいのものです。

# re: 新版の製品の普及と旧版の維持 2008/12/08 16:42 choir

>隠れコストも多いと思われます。
表面化したときは手遅れだったりw
保守要員として想定していた人が逃げたとかありがち。
いくら保守が重要といっても、VB6のスパゲティばかり弄らせてたら
そら見込みある新人から先に逃亡しますがなー

継続的に保守するってむつかしい。

# re: 新版の製品の普及と旧版の維持 2008/12/08 17:53 ognac

>コードジェネレータ
完成度の高いジェネレータやFrameWorkだと、このようなことに陥るのでしょうね。
業務要件を満たすのだから、新版は不要だとするのは、一理ありましす。
 保守要員が嫌がるのも事実で、逃亡を計る人もあるかもしませんね。
VB6やVS2003の保守作業で満足している開発者がいるのも事実で、世の中の人のアサインは巧く回っているのかも知れません。
ソフトを工業製品とするか否かで、見方は  180度変わるので、悩ましい所です。

# re: 新版の製品の普及と旧版の維持 2008/12/09 1:40 Pasie.

>ソフトを工業製品とするか否か
 受託開発(SI)ならば、間違いなく工業製品だと思いますが… 否なケースというのはどういう場合なのでしょうか。

>保守要員が嫌がる
 これって結局、"保守は開発に劣る"と言外に言っているからなんではないかなと邪推。類例は"下流工程は上流工程に劣る"とかもありますが。
 "VB6やVS2003の保守作業で満足している"って表現からもそんな雰囲気を感じてみたりします。尤も保守でリファクタリングをしている人の立場から見れば、開発は保守性の悪いコードをガンガン書いてるくせに偉そうにするな、とか思うのでありましょうが。

 なんか士農工商だな。

# re: 新版の製品の普及と旧版の維持 2008/12/09 10:18 ognac

最近のブログでの会話を通じて、
ソフトは工業製品なんですが、単純作業工程の製品か、製造者意志が反映する製品かの差ではないかと考えるようになりました。製造ロジックや記述規約、処理の記述箇所(Eventの箇所)を規定していて、開発者は該当のEventの箇所に、業務ルールを記述すれば、アプリが仕上がる。
このスタイルを工業製品化と称しました。(承知の上での御指摘だと思い、考えてみました)
開発者の技術志向や向き不向きの凸凹の影響を少なくし、頭数で総工数を設定し、見積りします。
 インフラはそれに合わせて作られるので、OS/言語の新盤に対応しにくくなるのは前述の通りです。
インフラ担当が作る部分は、ある程度、先行投資の部分あるので、試行錯誤要素(作業工程でない要素) と検証要素がある分、種類の違う仕事かな..と考えます。
   >"VB6やVS2003の保守作業で満足している"って表現から
確かに、自省が足りない文でした。
  新人が入ってきて、彼らに保守作業に必要な 、VB6やVS2003の知識を教えることで、仕事は回ります。
その後、新人が新版に興味を示すか、指示された知識で満足するか...... と考えること自体が、工程差別があると言えますね。一方で、開発者は向上心をもって、仕事で必要なスキル以上の知識を追求して欲しいと思うのです。解説本を自費購入することも否定する人や、知識追求をしない人をみると、「いいのかな? でも現状で生活可能なのでいいか」と感じるのです。「新機能を広めたい、知って欲しい」「よりすっきりした製品になる。」との思いが..........と書いてみると、私の傲慢な意識が見え隠れしている気になってきました。..
うーん。新版のアピールとソフト開発の在り方.....難しいです。

# re: 新版の製品の普及と旧版の維持 2008/12/09 12:15 choir

>開発者は向上心をもって、仕事で必要なスキル以上の知識を追求して欲しいと思うのです。
知的好奇心という動機だけでやっていける人ばかりではありませんから。
「いくらやったって、どうせ仕事で使う機会回ってこねーよ」という状態でモチベを保つのは中々に。

個人的には、新人にVB6なんて必要ないと言いたい。
そこかしこにVB6しか読み書き出来ない(扱えてるとは言わない)ヲヤヂどもが居るじゃねえかと。
そんな連中の残した負の遺産を新人に負担させるなんてとてもとても。
(…ということをオブラートに包んで言った次の週、新人はそんなヲヤヂの下でVB6やってましたとさ)

保守は重要だけど、保守の名の下に負の遺産の押し付けが行われるのはイヤン。

# re: 新版の製品の普及と旧版の維持 2008/12/09 22:39 Pasie.

>単純作業工程の製品
 えーと。これもですね…(以下略)
 こうは考えられないでしょうか。
 たとえば、宇宙を研究する人と、クォークを研究する人とは、そのサイズに天地の差がありますが、優劣はないですよね。
 同じように、単純作業と言われている分野にだって、裁量や改善がきく余地はたくさんあって、光る仕事をする人はざらにいます。逆にわれわれIT屋でもそんなこととは無縁に言われたことだけを漫然と仕事をする人はいます。そして、IT屋なんて所詮コンピュータの前でしか作業しなくて、その枠から一歩も出ることはできないよね? ということはそれはルーチンワークと変わらなくない? といった見方をする業種の人はいると思います。
 結局、どこに基準を置いて、どこを魅力的な世界と定義づけるかで見方は4πステラジアン変わるのだと思います。
 私は、転勤の利点をやたら主張する友人に「じゃあジンバブエあたりで弁当屋でもやってみたら?(意訳)」といってみたことがありますが、それとこれとは話は違うらしいです。違う世界をみることがすばらしいのなら、IT屋からも日本からも離れたほうがすばらしいんじゃないかと思ったんですけどね。そうじゃないらしいです。
 つまり、どこを主戦場にしててなにを大切にしているかによって視点はかわります。大宇宙を主戦場としているひとがクォークなんて意識しないのと同じように(これはかなり嘘ですが、比喩表現ってことで許してください-_-;)

>新人が入ってきて、彼らに保守作業に必要な 、VB6やVS2003の知識を教えることで、仕事は回ります。
 かくて、VB6やVB2003を教え、その範囲で仕事ができているというのはすばらしいことだと思います。
 立場を逆にして考えて見ると、納入した業務システムを、オペレータと同じレベルで実業務で使うことはIT屋にはできませんが、それを不勉強だと非難されてもどうもなりません。それと同じ事を新人に要求している気がします。
 もしも新人にその枠の外に目を向けてほしいなら、光の差す方向を指さして見せてやる必要があるんじゃないかなあ。

 駄文失礼しました。

# re: 新版の製品の普及と旧版の維持 2008/12/10 0:49 Ognac

>えーと。これもですね…(以下略)
仰ることは、重々理解できるのです。頭では理解できるのです。...しかし、「技術者はこうあって欲しい」という個人願望の優先度が高くなり、偏見に近い見方をしているのも自覚できるのです。......葛藤している自分がいます。
 choir さんの言うところの「いくらやったって、どうせ仕事で使う機会回ってこねーよ」と言う人も構成員であり、対等です。うーん。こんな発言していること自体、どこかに「IT屋という自負」がある気がします。
「自負」と「他との区別意識」は紙一重の気もして、Pasie. さんのように理論的に納得できず、感覚的に判断しているのが実情ですね。
 転職するのも選択ならば、転職しないのも選択なので、善し悪しや幸不幸で論ずるものではないのは同感です。
 「やらずに後悔するより実行して後悔せよ」は万人に通用しないし。「知らぬは罪」より「知らぬが仏」が楽なようです。
>VB6やVB2003を教え、その範囲で仕事ができているというのはすばらしいことだと思います。
これが 「DOSの QuickBasicだったとしても、同じ事」になるのでしょうか。
当人の知識蓄積は、自己責任と見るか、所属会社の責任とみるかでも異なりますね。昨今は、じっくり社員教育している会社は少ないとも聞きます。うん?  スキル習得が「エライ事」だと錯覚している自分がいますね。.....価値観が揺らいできました。....orz。

# re: 新版の製品の普及と旧版の維持 2008/12/10 10:08 choir

>知識蓄積は、自己責任と見るか、所属会社の責任とみるか
業務上必要なのに足りてないなら、所属会社の責任。配置のミスマッチor教育不足。
自分が、今後やりたい仕事のための蓄積なら自分自身でやるだけ(こちらは責任じゃないやね)。

まー、後ろから肩を叩かれたくなければ
業務で使えそうなもの、使うことになりそうなものを自分で勉強しておけばなんぼか。

# re: 新版の製品の普及と旧版の維持 2008/12/10 23:42 Pasie.

>これが 「DOSの QuickBasicだったとしても、同じ事」になるのでしょうか。
 同じと思いますよ。
 ただ、投資対効果ってのもありますよね。懲罰的な意味合いでレガシーやらせるってのは論外としても、効果が薄い、つまりは仕事の量が減っていくのが分かっているのにむやみに新人入れるのはどうでしょう?という話はあるとおもいます。
 なんだけど、仮にQuickBasicで業務システムをまわせるだけの市場があって、ハードウェアも確保できたりとか(VMかな?)するなら、今からでもQuickBasicってのはありと思います。

>個人願望の優先度が高く
>感覚的に
 感情面では、同じようなことで葛藤している自分がいます。それはもういろんな分野で。
 何だけれども、私の場合、そこは理論と言うよりは、期待してもだめなら要求レベルを下げて調節するしかないかなあと思ったりしています。でないと溝は埋まらないので仕事が進まない。対製造、技術的なところではそう考えることにしています。
 むしろストレスなのは、自分が能力的につらい事をできて当然のこととして押し付けてこられたときですかね。当然できなかったりするので負荷はかかるわけだが当然知らん振りなわけで。あるいは、報告されていないことには責任もてないからなちゃんと報告しろ、と言った直後に、そんなことまでいちいち言ってくるなとか、ええ、あなたは私に一体なにを要求しているのでしょう?結局足して割ると不都合な事象そのものを一切起こすなと言うことか?みたいなこととか。こういうのは結構きつい。自分がそれを御せるだけの能力をもてばいいのだろうがそれはなかなかに難しいし、おとしどころを見誤ると奈落に落ちるし、というか落ちまくっているわけで…
 すんません、最後愚痴になりました(汗

# re: 新版の製品の普及と旧版の維持 2008/12/11 0:42 Ognac

>でないと溝は埋まらないので仕事が進まない。
溝を浅くして、仕事を回るようにしないといけないのが、実務の世界ですね。
マニアの感覚と違う処なのでしょう。このギャップは埋まるどころか、広がる一方の気もします。
Pasie. さんの考えが聞けてホッとしている自分がいます。
「もっとアンテナ張らんかい!」と言いそうになっている間は未熟なんでしょうね。でも言いたい....orz.

# re: 新版の製品の普及と旧版の維持 2008/12/11 2:05 Pasie.

>「もっとアンテナ張らんかい!」と言いそうになっている間は未熟なんでしょうね。でも言いたい....orz.
 いやあ、これはどんどん言うべき何じゃないでしょうか。
 宝くじみたいなものだと思います。買わないと当たらないというか、そのためにはまず買わないとみたいな…

タイトル
名前
Url
コメント