• 検索結果がありません。

ソフトウェア工学の共通問題:2. 共通問題の現状

N/A
N/A
Protected

Academic year: 2021

シェア "ソフトウェア工学の共通問題:2. 共通問題の現状"

Copied!
4
0
0

読み込み中.... (全文を見る)

全文

(1)特集. ソフトウェア工学の共通問題. ?. 2 共通問題の現状. 基 応 専 般. 野田夏子(芝浦工業大学) 片岡欣夫(( 株)東芝) 「酒屋問題」だけ?. ゆえにこの Hilbert の講演は,19 世紀最後の年に為 されたということもあり来たるべき 20 世紀の数学. 共通問題,と言われても,それはいったい何なの. 分野の発展の方向性を決める役割を担ったとの評価. か,と疑問を持たれる読者もいるかもしれない.あ. がある.実際に今日に至るまで多くの専門家たちが. るいは,ソフトウェア工学分野の読者であれば,共. この問題群に取り組み,数学の進化を支えた.. 通問題と聞けばまっさきに酒屋問題を思い出される. このように,数学においては,共通問題は今後解. かもしれないし,さて酒屋問題以外に共通問題と言. かれるべき未解決問題として提示される.したがっ. えるものがあったっけ,と思われるかもしれない.. て,何が共通問題であるかということは比較的はっ. ソフトウェア工学における共通問題とは何か,につ. きりしていると思われる.ただし,単に未解決とい. いては本特集の 「ソフトウェア工学の共通問題とは」. うことであれば,分野全体において数多く存在する.. を見ていただくとして,本稿では具体的にどのよう. そこから選別しとりまとめて提示するとなれば,と. な共通問題があるのかを紹介し,ソフトウェア工学. りまとめられるものは必ずしも自明ではない.たと. における共通問題の現状を考える.. えば,「ヒルベルトの 23 の問題」の例でも,広大 な数学の学問領域を漏れなく,かつまんべんなくカ. 他分野における共通問題. バーすることはできていない.当然ながら Hilbert とその学派がある意図を持って方向づけを試みたと. ソフトウェア工学分野の具体的な共通問題を紹介. いう側面があるとみるのが妥当である.. する前に,ソフトウェア工学の共通問題の位置づけ. また,未解決問題もいつかは未解決ではなくなる. と意義を確認するため,他分野における同種の問題. ので,いつまでもそれが共通問題とはなり得ない.. がどのように位置づけられているのかを概観する.. ヒルベルトの 23 の問題は現在では 5 つを除いて解. ここでは科学分野と工学分野から,それぞれ代表的. 決済みであり,未解決問題リストとしての意義は失. な事例について概説する.. われつつある.このため同様の未解決問題リストが 新たにいくつも提案されている.近年著名なものと. ❖❖数学の場合. しては懸賞付きの「ミレニアム問題」7 題が存在し,. 数学においては,時代ごとに未解決問題をとりま. これまでポアンカレ予想が肯定的に解決されたのみ. とめその時代における学問分野発展の道標にすると. となっている.未解決問題の中には計算機科学とも. いう試みがいくつか存在する.その代表的なものが. 縁の深い「P ≠ NP 予想」も含まれている.. 「ヒルベルトの 23 の問題」である.数学者の David. 882. Hilbert は,1900 年の国際数学者会議にて,当時未. ❖❖建築工学の場合. 解決であった 23 の問題をとりまとめたリストを発. 工学分野においての共通問題は科学分野のような. 表している.Hilbert 自身は当時 38 歳で,すでに数. 未解決問題の提示という形ではなく,当該分野にお. 学の多くの分野で卓越した業績を残していた.それ. ける技術のベンチマークとして用いられる「標準問. 情報処理 Vol.54 No.9 Sep. 2013.

(2) 2 共通問題の現状. 学における共通問題は 1 つの決まった性質(たとえ ば未解決問題であるとか,ベンチマークとして機能 するとか)を持つものではない.大別すれば,ベン チマーク型,コンテスト型,グランドチャレンジ型 の 3 つがある.それらの型の具体的な例が分かる ようにいくつかの共通問題を紹介する.ただし,ど の型であるかについて必ずしも共通の認識があるわ けではないし,またある型の問題が別の型の問題へ と発展していく場合もあるので,タイプ別の紹介と はせず,説明の中でどのタイプと認識されているか を述べることにしたい.. 図 -1 住宅用標準問題. 1). ❖❖図書館問題 図書館問題は,図書館における図書の貸出・返却,. 題」が設定されている事例がある.ソフトウェア工. および蔵書の管理を行うソフトウェアを開発すると. 学と良いアナロジーを持つ建築工学では,1985 年. いう課題であり,酒屋問題とともに大学のソフトウ. に「住宅用標準問題」なるものが建築学会から提. ェア演習課題として古くからモチーフとされてきた. 1). 案されている .この問題は住宅の標準的な間取り (図 -1)を設定し,その住宅を対象にして建築工学. ものである. 非常に有名でよく使われる問題ではあるが,しか. 上のさまざまな技術検証を行うというものである.. しさて原典はというと,これがはっきりしないよう. 近年はスマートコミュニティやスマートハウスの各. である.さらに,「図書館における図書の貸出・返却,. 種技術検証のため,広く活用されている.. および蔵書の管理を行う」という以上には,共通し. このように一定の役割を果たしてきた標準問題で. た明確な仕様は与えられていない.この共通問題を. あるが,提案されてからすでに 30 年近くが経過し. 使う人,たとえばこれをソフトウェア設計の演習課. ており,昨今の住宅事情や少子高齢化などの動向を. 題として学生に提示する教員が,その目的に沿って. 考慮すると同じモデルを使い続けることの妥当性が. 個々に仕様の追加を行っている.. 問われるところである.また特に現実社会での価値. 共通問題としては獏としているところもあるが,酒. ということを考慮すると,多様性をどのように扱う. 屋問題と同じく現実を指向した課題設定となってお. かということも課題となるであろう.. り,かつ図書館の利用という日常的な活動(特に学 生にとって)を対象としているため,要求分析・設計・. ソフトウェア工学における共通問題の例. 実装・試験というソフトウェア開発の基本的な流れ を一通りカバーできる題材として活用されてきた.. さて,本題であるソフトウェア工学における共通. 図書館問題は,酒屋問題と同じく,ベンチマーク. 問題(ただし酒屋問題以外)を紹介する.. 型の共通問題ということができる.その一方で,近. 他分野において共通問題にあたるものとしては,. 年,図書館問題がソフトウェア開発の基本的な流れ. 数学の場合では未解決問題,また建築工学では技術. を一通りカバーできる題材であるという特徴を活か. のベンチマークに用いられる標準問題があることを. して,新たな研究チャレンジの下に図書館問題を再. 紹介したが,本特集の「ソフトウェア工学の共通問. 生する試みも行われている.たとえば鵜林らは, 「抽. 題とは」で述べられているように,ソフトウェア工. 象度を考慮した設計・コード間の同期」という研究. 情報処理 Vol.54 No.9 Sep. 2013. 883.

(3) 特集. ソフトウェア工学の共通問題. 図 書 館 問 題 2. 0 ( グ ラ ン ド チ ャ レ ン ジ 型 ). 研究チャレンジ 抽象度を考慮した設計・コードの同期 説明 図 書 館 で の 図 書 の 貸 し 出 し シ ス テ ム を 考 え る (以 下 , シ ス テ ム の 機 能 仕 様 の 概 要 を 説 明 ). 上記の問題に対し,以下を行う. 設計モデルとコードの間で双方向のトレーサ ビ リ テ ィ が 確 保 さ れ る よ う に せ よ . ト レ ーサ ビ リ テ ィ と は モ デ ル を 変 更 す る と 対 応 す るコ ー ド が 同 期 し て 変 更 さ れ , そ の 逆 も 成 立 する ことをいう. 同期の抽象度が設定できるようにせよ. 図 -2 図書館問題 2.0. 2). ❖❖bCMS-SPL 近年,その分野の手法を比較したり,今後の研究 課題を議論したりするために,共通の例題を設定し て議論を行うタイプのワークショップが開かれるよ うになってきた.このタイプのワークショップで 用いられる例題も,ベンチマーク型の共通問題の 1 つと捉えられる.そのようなワークショップの 1 つとして,ソフトウェアのモデリング手法を比較 する“Comparing Modeling Approaches Workshop” があるが,このワークショップで用いられる例題が, 自動車事故管理システム(Car Crash Management. チャレンジを設定し,グランドチャレンジ型の「図 2). 書館問題 2.0」 (図 -2)を提案している .. Systems)のソフトウェアプロダクトライン(Software product line, SPL),bCMS-SPL. 4). である(冒. 頭の b は本例題が開発された場所にちなんで,ま. ❖❖話題沸騰ポット. たベータ版であるという意味で付加されているらし. 話題沸騰ポットは,組込みシステム分野でよく知. い).このシステムは,自動車事故に際して,消防. られた例題である.架空の電子ポットシステム(架. 署,警察,自治体等関係者の連絡・調整を行い,早. 空といっても,その機能は,中に入れた液体の沸. 急に(かつ費用効率よく)救助等の事故処理を行う. 騰,保温ができるという,ごく普通に考えられる電. ことを目的とするシステムである.機能・非機能要. 子ポット)であり,その要求仕様書が公開されてい. 求,およびシステムのバリエーションを示した要求. る.これをもとに電子ポットシステムを分析・設計. 定義書が公開されている.オリジナルは 2010 年に. できることが企図されており,特にこの要求仕様書. 公開され(そのときはプロダクトラインではなく単. の第 7 版. 3). は,できる限り曖昧さをなくした仕様. 一のシステムであった),その後毎年改良や追加(単. 書の例として作成されている.. 一のシステムからプロダクトラインにするなど)が. 酒屋問題等に比べると仕様が明確であり,逆に言. 加えられ,問題自身が発展を続けている.. えば問題を使用する際の自由度がない.そのため,. 884. 本特集「ソフトウェア工学の共通問題とは」で述べ. ❖❖ESS ロボットチャレンジ. られているような「ソフトウェア工学のさまざまな. ESS ロボットチャレンジは,情報処理学会組込み. 技法の特徴をくっきりさせることが目的」の問題で. システム研究会主催の組込みシステムシンポジウム. はなく,分析・設計を実習するための例題という捉. (ESS)で行われている特別企画であり,組込みシ. え方もできる.しかし,組込みソフトウェアのため. ステム技術を駆使し,自動航行する室内用飛行船ロ. の開発技法の提案などにおいて,その手法の妥当性. ボットシステムの開発を競う競技である.基本的に. を示すために,実際にその手法においてこの話題沸. は競技であり,本特集「ソフトウェア工学の共通問. 騰ポットを開発しその結果を示すといったことも実. 題とは」でも触れられている ET ロボコンと同様の. 際に行われている.このようなことから,組込み分. コンテスト型の共通問題である.ただし,小型飛行. 野のソフトウェア工学におけるベンチマーク型の共. 船の自動航行という点を基本に,年ごとに特徴や目. 通問題の 1 つと捉えてもよいだろう.. 的が設定され,競技内容が少しずつ異なっている.. 情報処理 Vol.54 No.9 Sep. 2013.

(4) 2 共通問題の現状. ❖❖MSR Mining Challenge. てきた.「酒屋問題」が唯一の共通問題なのではなく,. MSR(Working Conference on Mining Software. さまざまな共通問題があるのである.しかし,酒屋. Repositories)は 10 年近くの歴史を持つソフトウェ. 問題ほど多くの人が知っている問題というと,それ. アリポジトリマイニング関連の国際会議である.こ. ほど多くはないようである.ソフトウェア工学が全. の国際会議では第 3 回から Mining Challenge という. 体として扱う範囲が広がり,多数の領域に細分化し. コンテストを開催している.このコンテストでは共. てきていることから,ある領域にかかわる人たちに. 通問題となるさまざまなデータを対象として,どの. とっての共通問題が,他領域では知られていないと. ような知見が導き出せるのかを競っている.MSR で. いったことがあり得るようだ.領域が異なっても,. は Mining Challenge のセッションが設けられており,. ソフトウェア工学として共有する部分はあるわけだ. コンテストの参加者がそれぞれの分析結果を投稿し,. から,このようなさまざまな共通問題を整理してお. 得られた知見に対する活発な議論が行われている.. くことは意味があるだろう.. 2012 年のテーマは Android プラットフォームの. また,共通問題といっても,固定のものではなく,. バグレポートデータを対象にしており,6 件の論文. 問題自身が常に修正・改良されたり,あるいは古い. 5). が採択されている .2013 年のテーマはナレッジ. 問題の再生の試みがあったりすることも紹介した.. コミュニティの代表例である Stack Overflow Web. 今後もそれぞれの共通問題は進化を続けるだろう.. サービスの公式ダンプであり,12 件の論文が採択. さらに,新しい時代に合った,しかもある程度息. 6). されている .. の長い後世に残る共通問題も求められている.これ については,ぜひ本特集「酒屋問題再考」をお読み. ❖❖検証コンパイラ. いただき,新しい共通問題について考えていただき. 最後に,本特集「ソフトウェア工学の共通問題と. たい.. は」で触れられている,グランドチャレンジ型の共 通問題「形式手法のグランドチャレンジ」から,検 証コンパイラを簡単に紹介する. Hoar は科学や工学の分野におけるグランドチャ レンジの意義やその要件を議論し,計算機科学分野 でのそうしたグランドチャレンジの一例として検証 コンパイラ(verifying compiler)を提案している. これは,コンパイルしたプログラムの正しさを,数 学的かつ論理的な推論によって自動的に確認するこ とのできる手法の提案を求めるものであり,レガシ ーコードを用いてその評価をすることを求めている.. 参考文献 1) 宇田川光弘:標準問題の提案(住宅用標準問題),日本建築学 会第 15 回熱シンポジウムテキスト,pp.23-33(1985). 2) 鵜林尚靖 他:図書館問題 2.0:ソフトウェア工学研究におけ る共通問題例,ウィンターワークショップ 2012・イン・琵琶 湖予稿集(2012). 3) 特定非営利活動法人組込みソフトウェア管理者・技術者育 成 研 究 会, 話 題 沸 騰 ポ ッ ト(GOMA‑1015 型 ) 要 求 仕 様 書 第 7 版(2005),http://www.sessame.jp/workinggroup/ WorkingGroup2/POT_Specification_v7.PDF 4) Capozucca, A. , et. al. : Requirements Definition Document for a Software Product Line of Car Crash Management Systems, http://cserg0.site.uottawa.ca/cma2013models/ 5) MSR Mining Challenge 2012, http://2012.msrconf.org/ challenge.php 6) MSR Mining Challenge 2013, http://2013.msrconf.org/ challenge.php (2013 年 7 月 1 日受付). この問題は計算機科学の基礎的な問題を扱っており, また一般の人に対しても分かりやすくインパクトの ある問題設定となっており,分野の発展やその認知 の向上に貢献するものといえる.. 未来に向けて 本稿では,具体的な共通問題のいくつかを紹介し. 野田夏子(正会員)[email protected] 東京女子大学大学院理学研究科数学専攻修了.北陸先端科学技術 大学院大学情報科学研究科博士課程修了.博士(情報科学).NEC 勤務を経て,2013 年より芝浦工業大学准教授. 片岡欣夫(正会員)[email protected] 大阪大学大学院基礎工学研究科物理系専攻修了.同大学院情報科 学研究科博士課程修了.博士(情報科学).(株)東芝勤務.ソフト ウェア生産性に関する研究に従事.. 情報処理 Vol.54 No.9 Sep. 2013. 885.

(5)

参照

関連したドキュメント

議論を深めるための参 考値を踏まえて、参考 値を実現するための各 電源の課題が克服さ れた場合のシナリオ

「1 建設分野の課題と BIM/CIM」では、建設分野を取り巻く課題や BIM/CIM を行う理由等 の社会的背景や社会的要求を学習する。「2

市民社会セクターの可能性 110年ぶりの大改革の成果と課題 岡本仁宏法学部教授共編著 関西学院大学出版会

を育成することを使命としており、その実現に向けて、すべての学生が卒業時に学部の区別なく共通に

を育成することを使命としており、その実現に向けて、すべての学生が卒業時に学部の区別なく共通に

難病対策は、特定疾患の問題、小児慢性 特定疾患の問題、介護の問題、就労の問題

2030 プラン 2030 年までに SEEDS Asia は アジア共通の課題あるいは、各国の取り組みの効果や教訓に関 連する研究論文を最低 10 本は発表し、SEEDS Asia の学術的貢献を図ります。.

【目的・ねらい】 市民協働に関する職員の知識を高め、意識を醸成すると共に、市民協働の取組の課題への対応策を学ぶこ