日別アーカイブ: 2009 年 1 月 20 日

仕様解釈のあいまい性

どうも、BMOです。

本日は少し堅いお話を。

 

昨日納品したWebのページがあるブラウザで正しく表示できない
という現象が発生して、お客様にご迷惑をかけてしまいました。

 

これは、HTMLの修飾(表示)に関する定義を行う、CSSというデータの
解釈の仕方がブラウザにで違ったために発生した問題でした。
原因となった部分を、解釈の違いが発生しないような書き方の
HTMLとCSSに作り直し対応しました。

 

この種の問題はWebページを作る人々の中ではかなり有名な問題で
そのブラウザの振る舞いの違いを回避するために、いろいろな
方法(『CSSハック』なんて格好のよい名前がついていますが)が
知られています。
ただ、そもそもW3Cという団体からきちんと公開されている仕様に
則って作られたはずのブラウザが、個々に実装に違いがでることが
問題だと思います。

 

私も長らくシステム開発に携わった経験から、お客様の想いが要件となり、
要件が仕様になり、そしてプログラムとなっていく中で、使われる自然言語の
あいまい性からいろんな齟齬が生まれる現実を見てきました。
システム化を前提に記載された仕様(上述のCSS)ですら、実装者によって
結果が変わることになるのですから、上記は言わずもがな、
なのかもしれません。

 

ということを踏まえると、お客様が望んだものができているか
どうかを判断するには、仕様通りに実装されたかの確認は必要条件
として、更に、十分なテストと確認をすること以外、現時点では
それを保障する方法はない気がします。

 

ちなみに、皆さんは新築で家を買うときに、設計図(=仕様)だけで
契約をしてお金を払ってしまいませんか?
で、通常は納得できる家が、ほぼ予定通りの期間で造られる筈です。

 

家の売り手も(作り手)も買い手も、それで双方納得して商売ができる
というのは、建築業界はIT業界よりも、もの作りの面においては、やはり
一日の長があるといわざるを得ないでしょう。

 

そういう意味ではIT業界はまだまだ未成熟な業界ですが、BMOは微力ながらも
このIT業界の成長に、そして成熟に貢献できればと思っています。

 

#  思いの外、大きな話になってしまいました・・・(^^;

本日はこのへんで。

タグ , ,