CSS2010の3E2-1「ネットワークセキュリティ業界における産業と学術のギャップに関する一考察」を聴講して思ったことをTwitterにつぶやいて,3E2-1後日談としてTogetterしました.しかしながら,誤字が多かったり論理が飛躍していたりで不満足なので,ここに改めて書き直します.
「学術理論における現実適用に向けた考慮の不足」において,学術側は「真っ新な世界」,産業側は「既存技術との親和性」を前提条件としている旨が説明された.学術研究においては,ある問題を解決するためのモデルを構築する際に,どうすべきかどうあるべきかを理論的に最適なものを設計する.これが「真っ新な世界」である.また,目指すものは「最高のセキュリティ」であり,現状では達成困難なものがあるならまだしも,「妥協」は許されない.対して,産業側では現状で動いているシステムに対して,新しい機能を付け加えようと考える時,そのシステムの継続可能性,運用可能性,信頼性,コストとの兼ね合いなどを考えて,総合的な親和性を重視する.そのため,既存システムとの親和性を全く考慮しない学術側の提案システムは,完全なリプレースとなるために,製品として開発・導入することが難しいという問題があり,これが産学のギャップの1つと見られている.
これは何も製品レベルでの開発に限った話ではなく,DIYプログラミングでも発生する.例えば,卒研などでプログラムを組む際に,既存モジュールや過去の資産を再利用してプログラミングするのと,真っ新から新規に書き起こすのではコストが全く違う.コストだけにとどまらず,信頼性も全く違う.既存モジュールであれば,十分にテストされており,それなりの信頼性がある.そのため,そこに手を加えない限り,その部分はデバッグの対象外にしても良いかもしれない.そのようにすれば,開発の手間を大幅に削減することができる.これは逆に考えれば,新規コードを追加した場合は十分なテストが必要であり,それが信頼性に繋がる.「ちょっと書き加えるだけだから簡単でしょ?」などという人は概ねプログラミングに理解が少ないと思われる.確かに,一見動いているかのように見えるプログラムは準備できるだろうが,それを実戦投入した際には,想定外のトラブルを引き起こすことがある.
学術的な研究であっても,情報システムとして実際に使われることを想定する場合,如何に既存システムに手を加えることなく,今までできなかったことをできるようにするのかというテクニックは1つの重要な視点である.システムの評価項目にRASISというものがある.RASISはReliability,Availability,Serviceability,Integrity,Securityのそれぞれの頭文字を取った語である.このような用語があることからわかるように,これらは研究においても実用においても評価されることが多い.つまり,実運用可能なシステムを考える場合,「Securityだけ」ではダメで,もちろん「Reliabilityだけ」でもダメで,RASISそれぞれが運用可能なレベルで維持されていることが肝要となる.そのため,RASISを考慮したシステムでなければ,実用性は無いと言える.ちなみに,個人的には最初のSはServiceabilityではなく,Sustainabilityの方がいいのではないかと思ったりしてもいる.
RASISならびに既存技術との親和性なども考慮した場合,如何に既存技術に手を加えることなく,新しい機能を付け加えるために拡張するかという話になる.ややもすれば,単なる既存技術の組み合わせになるかもしれない.それはもちろん新規性はないだろう.しかしながら,従来ではできなかったことができるようになり,その有用性が高く評価されるのであれば,十分に価値があるものであると思う.
だが,学術界の実際においては,例えば論文の査読などにおいては,「本論文で提案されている方式は~~有用性はあるものと思われるが,既存技術の組み合わせに過ぎず,新規性が認められない.よって不採録と判定する.」などと判定されることがある.もちろん学術論文においては,新規性も有用性も信頼性も重要であるが,査読基準に照らし合わせればその全てが常に必要であるとは述べられていない.これについては情報処理学会の査読基準を引用したい.
例えば、新規性と有用性の内どちらかが高く読者にとって有益と判断される場合、あるいは現時点では有用性の判定が困難で、評価を読者あるいは将来に任せた方が良いと考えられる場合には、採録とする方針でお考え下さい。
このように述べられており,「新規性がないからダメ」という乱暴な判定は認められていないと思われる.しかし実際には新規性は必須要件であるかのような査読結果が返されることがままあるのは如何ともし難いところである.
新規性が必須であるという立場を取り,既存技術の組み合わせによって生み出される有用性を認めないという状況を想定しよう.例えば,「あるアルゴリズムをある問題に当てはめたところ従来困難とされていたことが解決された」というような論文に対して「単なる既存技術の組み合わせ(適用)に過ぎず新規性が認められない」と言いのけられるだろうか.これは難しいと思う.この手の問題の場合,問題が解決されたことに焦点が当てられ,解決手法の新規性は強く意識されないように思われる.しかし,情報システムやセキュリティに関しては,新規性が最重要項目かのように強調され,有用性が軽視されているかのような感覚を覚えてしまうのは何故なのだろうか.
学会としても実践的な取り組みや実用可能なシステムを軽視しているわけではもちろんない.それは情報処理学会がデジタルプラクティスを創刊したことからも明らかであろう.少しずつでもこの重要性が浸透していけば,学術側と産業側のギャップも少しは埋まるのではないかと思う.
関連:
JNSA 学術界とのギャップ解消検討BoF - 4403 is written
JNSA 第2回学術界とのギャップ解消検討BoF - 4403 is written
Togetter - 「3E2-1後日談」