出典: IPSJ SIGSE 2002-SE-138-9, pp.59-65 (2002年7月11日〜12日@はこだて未来大学)

International Workshop on Principles of Software Evolution(IWPSE2002) 参加報告松下 誠
大阪大学大学院情報科学研究科〒 560-8531 大阪府豊中市待兼山町 1-3

第 5 回目の IWPSE となる International Workshop on Principles of Software Evolution (IWPSE2002)
は，2002 年 6 月 19 日と 20 日の両日，アメリカ南西部にあるフロリダ州オーランドにて，ICSE2002 の併設ワークショップとして開催された．本稿では，過去の IWPSE の経緯と，今回の IWPSE2002 の内容について概略を述べる．

Report of International Workshop on Principles of SoftwareEvolution (IWPSE2002)
Makoto Matsushita
Graduate School of Information Science and Technology, Osaka University
1-3 Machikaneyama-cho, Toyonaka,
Osaka 560-8531, JapanThe 5th International Workshop on Principles of Software Evolution (IWPSE2002) has been held in
Orlando, FL, at June 19, 2002 and June 20, 2002. In this article, I will show the history of IWPSE,and summarize this workshop.

-1-

1

はじめに

今 年 で 5 回 目 の開 催と なった International
Workshop on Principles of Software Evolution(IWPSE) は，アメリカの南西部，フロリダ半島のほぼ中央部に位置するオーランドにて，2002 年
5 月 19, 20 の両日開催された．今回の IWPSE
は，ソフトウェア工学関連のカンファレンスとして有名な ICSE2002 の併設ワークショップとして，ICSE2002 本会議 (5 月 22 日〜24 日) に先だって開かれたものである．
IWPSE は，1998 年に京都で開催された ICSE98の併設ワークショップとして，日本で開催されたのが最初である．その後続けて 2 回は，単独のワークショップとして，日本国内で開催されている．2000
年の IWPSE はシンポジウム形式となり，より規模が大きくなった．2001 年より，開催場所を海外へ移し，ESEC/FSE 2001 の共催ワークショップとして，オーストラリアは Vienna で開催された．
そして今年，IWPSE は第一回の IWPSE と同じ
く，ICSE の共催ワークショップとして戻ってくることとなった．また，本ソフトウェア工学研究会
は ISPSE2000 の時よりスポンサーとして協力を行っている．これまで開催された IWPSE の開催時期，および場所をまとめると以下の通りとなる．となっていることが会期中に発表されていた．日
本で生まれたワークショップがこのように大きく成長しているということは，日本国内のソフトウェ
ア工学の研究者にとって，とても喜ばしいことではないかと思われる．
今回のワークショップは，会場となっているホテル，Orland Marriott World Center の一室，およそ 60 人ほどが収容できる会議室にて行われた．

図 1: IWPSE2002 会場を示す案内板• IWPSE98: 1998 年 4 月 20〜21日，京都府京都市国立京都国際会館(ICSE98 の共催ワークショップ)• IWPSE99: 1999 年 7 月 16〜17 日，
福岡県福岡市福岡ソフトリサーチパーク• ISPSE2000: 2000 年 11 月 1〜2 日，
石川県金沢市ハイテク交流センター• IWPSE2001: 2001 年 9 月 10〜11 日，
Vienna University of Technology, Vienna, Austria (ESEC/FSE 2001 の共催ワークショップ)「ソフトウェアIWPSE は，その名前にある通り，進化」に関する技術や事例を広く扱っており，特定の領域に寄らない，さまざまな新しい技術に関する発表や議論がこれまで行われてきた．今回のIWPSE2002 では，通常のカンファレンスと同様のフルペーパーと共に，新しい概念や議論の提案のためのショートペーパーという 2 種類の投稿が募集されていた．実際には 6 件のフルペーパー，20件のショートペーパーが採録されており，日本をはじめとして計 10 ヶ国からの投稿が採録されている．また，IWPSE2002 は，今回の ICSE2002 併
設のワークショップの中で最大の参加者数 (51 名)

図 2: IWPSE2002 会場
前述の通り，約 50 人程度の参加者であったため，名実共に熱気のこもる会場でワークショップは行われていたと言える．以下では，今回の IWPSE2002にて行われた内容について，それぞれ述べる．

2

ワークショップ初日

初日は，午前中に基調講演とフルペーパーのセッション，午後にショートペーパーのセッションが2 つ行われた．フルペーパーのセッションでは質疑を含め一人 30 分，ショートペーパーのセッショ-2-ンでは同約 20 分の持ち時間となっていた．

2.1

明確に定義できること，Collaboration–Field はそれぞれ独立しているため，実際にどのような実体が動作するかを意識することなく，その抽象的な概念だけを再利用できること，などが Epsilon モ
デルの利点としてあげられていた．発表では，Epsilon モデルの利点や Java 風の記述言語などについて，具体的な例をあげて説明が行われていた．
Epsilon は，その概念自体はシンプルながらも，ソフトウェア進化に関するモデルを考える上でよく取りあげられる多くのトピックをうまく扱っており，関連研究との比較などもあり，非常に興味深く発表を聞くことができた．また，発表内容についての質疑も多くあり，予定されていた 75 分の枠をあっと言う間に使いきって終了となった．

基調講演

IWPSE2002 の基調講演は，東大の玉井先生によって行われた
Tetsuo Tamai (University of Tokyo,Japan):“Evolvable Programming
Based on Collaboration–Field and RoleModel”であった．玉井先生は，前回の IWPSE2001 のゼネラルチェア，ISPSE2000 での プログラムチェ
アなど，IWPSE でも多くの貢献をされている．また，今回は基調講演とは別に論文が採録されているなど，精力的に研究を続けられてらっしゃる先生である．

2.2

Session 1: Evolution in Source Code

基調講演から 30 分の休憩を挟み，最初のセッションが行われた．このセッションは 3 件のフルペーパーだけで構成されている．このセッション
で発表された論文のタイトルおよび著者は以下の通りである．

• Alejandra Garrido and Ralph Johnson (University of Illinois at UrbanaChampaign, USA): “Challenges ofRefactoring C Programs”• Tomoko Matsumura, Akito Monden
and Ken-ichi Matsumoto (NAIST,Japan): “A Method for Detecting
Faulty Code Violating Implicit Coding Rules”• Carlo Ghezzi and Mattia Monga (Politecnico di Milano, Itary): “Fostering Component Evolution with C#Attributes”

図 3: 玉井先生の基調講演
基調講演ではまず，これまでのソフトウェア進化に関する研究のアプローチを「進化の過程を観察し，そのパターンを発券する」方法と「ソフトウェアの進化を支援できるような，モデルあるいは言語の設計を行う」方法という，2 つの大きな分類について紹介した．続いて，後者のアプローチによるソフトウェア進化の支援方法として，Epsilonモデルの紹介を行った．
Epsilon モデルでは，全体が目的の異なる複数のCollaboration–Field から構成されており，それぞれの Collaboration–Field は，複数の Role と，その Role に割りあてられた作業，および Role 間のやりとりを含んでいる．また，Role には複数の Object (実際にその Role を実行する主体) が動的に割りあてられている．動的に決定される部分が残ることにより，実行時に Role と Object の定義を変更できることや，機能に応じて Collaboration–Fieldを定義することにより，separation of concerns を

1 件目の発表では，C プログラムのリファクタリングの際にどのような問題があるかを分析した後，マクロと ifdef などの条件文が含まれる場合のリファクタリング手法について発表を行った．2 件目
は，暗黙のうちに用いられているコーディング規則がバグを作りこむ原因であることを示し，コーディング規則をバグレポートからパターンとして抽出して，そのパターンを用いてバグ発見を行う手法について発表を行った．最後の 3 件目は，C#言語のアトリビュートを利用して，クラス間の依存関係などを記述する方法について発表を行った．
2.3

Session 2: System and Practical Issues

昼食を挟み，午後はショートペーパーのセッションが 2 つ行われた．午後最初のセッションとなっ-3-

tions for Practical Scalable SoftwareEvolution”
5 件目の発表者である Baxter 氏は，今回発表した DMS システムを ICSE のデモセッションでも発表していた．

図 4: セッション 1 発表風景
たセッション 2 では，ソフトウェア進化に関するシステムの実装等に関する，以下の 5 件の発表があった．このセッションで発表された論文のタイトルおよび著者は以下の通りである．
図 5: 発表中の Baxter 氏• Nguyen Truong Thang and Takuya
Katayama(JAIST,Japan):“Collaboration–Based
Evolvable
Software Implementations:
Javaand Hyper/J vs. C++–TemplatesComposition”• Nuria Medina-Medina (GranadaUniversity, Spain), Lina GarcíaCabrera (Jaén University, Spain), J.
Jesús Torres-Carbonell (Ministeriode Ciencia y Tecnología., Spain)
and José Parets-Llorca (GranadaUniversity, Spain): “Evolution in
Adaptive Hypermedia Systems”• Eric Wohlstadter, Brian Toone andPrem Devanbu (University of California, Davis, USA): “A Framework
for Flexible Evolution in Distributed
Heterogeneous Systems”• M.Wermelinger (New University ofLisbon, Portugal), G.Koutsoukos(OblogSoftware,Portugal),
J.L.Fiadeiro (University of Lisbon, Portugal), L.Andrade (ATXSoftware, Portugal) and J.Gouveia(Oblog Software, Portugal): “Evolving and Using Coordinated Systems”• Ira D. Baxter (Semantic Designs,USA): “DMS: Program Transforma-2.4

Session 3: Middleware Issues

セッション 2 に続いて，初日最後のセッションであるセッション 3 が行われた．このセッション
では，ソフトウェアモデルやライブラリの進化を支援する研究に関する 5 つの発表が行われた．このセッションで発表された論文のタイトルおよび著者は以下の通りである．

• Mikio Ohki (Nippon Instituteof Technology, Japan), ShinjiroAkiyama (JIP Engineering Service,Japan) and Yasushi Kambayashi(Nippon Institute of Technology,Japan): “A Veriﬁcation of Class
Structure Evolution Model and ItsParameters”• Noriki Amano (JAIST, Japan) andTakuo Watanabe (Tokyo Institute ofTechnology, Japan): “A Software
Model for Flexible and Safe Adaptation of Mobile Code Programs”• Marlon Vieira and Debra Richardson (University of California, Irvine,USA): “The Role of Dependencies
in Component-Based Systems Evolution”• Noritoshi Atsumi, Shoji Yuen,
Kiyoshi Agusa (Nagoya University,-4-ト, Linux サポート, PostgreSQL, Jun という 4 つの具体例についてそれぞれ紹介をした上で，3 つのパターンが考えられることについて発表を行った．2 件目は，非機能的な要求を把握するためのフレームワークとそれに基づく実装である SA3 について発表を行った．最後に，3 件目は，開発事例
2 つに対し，複数の信頼性予測モデルを適用した結果がどの程度信頼できるかについて，具体的数値に基づいて分析した結果について発表を行った．

Japan) and Shinichirou Yamamoto(AichiPrefecturalUniversity,Japan):“Library Evolution forReliable Software”• Markus Pizka (Technische Universität München, Germany): “Dynamic Component and Code CoEvolution”

3

ワークショップ二日目

ワークショップ二日目も，初日と同じ会場で行われた．しかし，初日終了時には教室型で並んでいた机が，二日目朝来てみると，なぜかカタカタの「コ」の字型に変更されてしまっていた．
このため，急拠ホテルのスタッフを呼び，レイアウトを変更する旨のお願いをすることとなった．
ホテルの従業員が追加の机を運びこむと，ホテルの従業員とワークショップ参加者総出で机の並べかえをすることとなった．その並べかえに多少時間が取られてしまい，予定より数十分遅れぎみでセッションが開始となった．

3.1

Session 4:
Models

Evolution Patterns and図 6: セッション休憩中

二日目最初のセッションは，フルペーパーで構成される以下の 3 件の発表があった．このセッションで発表された論文のタイトルおよび著者は以下の通りである．

3.2

Session 5: Analysis Issues

引き続いて行われたセッション 5 では，進化しつつあるソフトウェアを対象とした分析手法に関する 5 つの発表が行われた．このセッションで発表された論文のタイトルおよび著者は以下の通りである．

• Kumiyo Nakakoji, Yasuhiro Yamamoto (NAIST, Japan), Yoshiyuki
Nishinaka, Kouichi Kishida (SRAKey Technology Laboratory, Japan)
and Yunwen Ye (University of Colorado at Boulder, USA): “Evolution Patterns of Open-Source Software Systems and Communities”• Nary Subramanian (Anritsu, USA)and Lawrence Chung (University ofTexas at Dallas, USA): “Tool Support for Engineering Adaptability
into Software Architecture”• Shin-ichi Sato (NTT DATA, Japan),
Akito Monden and Ken-ichi Matsumoto (NAIST, Japan): “Evaluating the Applicability of Reliability
Prediction Models between Diﬀerent
Software”• Mikio Aoyama (Nanzan University,Japan):“Metrics and Analysis
of Software Architecture Evolutionwith Discontinuity”• Jianjun Zhao (Fukuoka Institute ofTechnology, Japan): “Change Impact Analysis for Aspect-Oriented
Software Evolution”• Mark Grechanik, Dewayne Perry andDon Batory (University of Texasat Austin, USA): “An Approach toEvolving Database Dependent Systems”• Michael Godfrey and Qiang Tu(University of Waterloo, Canada):“Tracking Structural Evolution Using Origin Analysis”• Tetsuo Tamai (University of Tokyo,

1 件目は，近年特に注目されているオープンソー
スソフトウェアの開発作業のうち，GNU サポー-5-

• Gregor Engels, Jochen M. Küster,
Reiko Heckel (University of Paderborn, Germany) and Luuk Groenewegen (Leiden University, Netherlands):“Towards ConsistencyPreserving Model Evolution”• David Bush (UK National Air TraﬃcServices, UK) and Anthony Finkelstein (University College London,UK): “Environmental Scenarios andRequirements Stability”• Kim Mens (Université catholique deLouvain, Belgium), Tom Mens (VrijeUniversiteit Brussel, Belgium) andMichel Wermelinger (UniversidadeNova de Lisboa, Portugal): “Supporting Software Evolution with Intentional Software Views”• Richard Potter (Japan Science andTechnology, Japan) and Masami
Hagiya (University of Tokyo, Japan):“Computation Scrapbooks for Software Evolution”

Japan) and Takako Nakatani (SLagoon, Japan): “Analysis of Software
Evolution Processes Using Statistical
Distribution Models”
1 件目では，今回の IWPSE2002 のゼネラルチェアを務められた青山先生も発表されていた．

図 7: 発表中の青山先生

3.3

Session 6: Conceptual Issues
3.4

昼食を挟み，最後のセッションとなるセッション 6 が行われた．このセッションでは，将来の研究課題となるであろう多くの概念的な話題について発表が行われた．このセッションで発表された論文のタイトルおよび著者は以下の通りである．

Closing

休憩を挟んで，最後にクロージングセッションが行われた．
最初に，各セッションチェアから，担当したセッションの発表について，それぞれ簡単な議論のまとめが行われた．一部のチェアが，残念ながらこの時居合わられなかったため，全てのセッションについて話を聞くことができなかったのは多少残念であった．

図 8: セッション 6 チェアの Lehman 先生• Toshihiro Kamiya (Japan Scienceand Technology, Japan): “SOMA: AParadigm to Evolve Software Basedon Separation of Concerns”

図 9: ワークショップ総括を行う井上先生
続いて今回のプログラムチェアである井上先生-6-活発な議論も有意義であり，今回 IWPSE2002 に参加できて，非常に良かったという感想を持った．
しかし，ソフトウェアの進化に対する要求はより高まってきているにも関わらず，現状の研究成果はその要求に十分答えらているとはいえないのではないか，という疑問も感じざるを得なかった．
また，基礎的な技術以外にも，実際に応用した結果等についても事例がまだまだ乏しいように思われる．社会の要求に答えるためにも，ソフトウェ
ア進化に関する研究はこれからも進められていかなければならないだろう．IWPSE の果す役割は，今後さらに重要になっていくのではないかと思われる．元々日本から生まれたワークショップということもあって，今回の IWPSE2002 でも日本からの投稿が多く見られた．しかし，ソフトウェア進化は日本だけに特化した話題ではないことはあきらかである．今後は日本国外から，特にアメリカやアジア太平洋諸国からの研究成果も投稿されると，より幅の広い研究課題について議論できるのではないかと思われる．
なお，IWPSE2002 の予稿集 [1] は ACM より出版されている．興味のある方は別途入手されることをお勧めする．

より，今回の IWPSE2002 全体についてのまとめが行われた．今回のワークショップでは，「アスペク
ト指向などを中心とした separation of concerns」「スケーラビリティ」「開発コミュニティ」「進化への適応」「連続的/非連続的な進化」「進化の計測」など，ソフトウェア進化に関して主に 6 つのテーマが多く見られた，等の紹介が行われた．
この後これらの話題などについて，会場全体でのフリーディスカッションが井上先生とワシントン大学 Notkin 先生の司会で進められていった．最
初はおだやかに議論が進んでいたが，次第に議論が白熱していき非常に有意義であった．特に多くの参加者からの質問等に対して，インペリアル大学ノ Lehman 先生が熱心に答えていたのが印象的であった．
最初の基調講演から最後のクロージングまで，参加者がほとんど減ることなく続いた議論は，午後5 時 30 分の時間いっぱいをもって終了となった．
最後に，次回の IWPSE2002 が，フィンランドはヘルシンキにて，ESEC/FSE 2003 の併設ワークショップとして 2003 年 9 月に開催される予定である旨の連絡があり，ワークショップは無事お開きとなった．

参考文献[1] Mikio Aoyama, Katsuro Inoue, and Václav
Rajlich:Fifth International Workshop
on Principles fo Software Evolution IWPSE2002, ACM ISBN 1-58113-545-9, ACM(2002).

図 10: セッションを終えて4

むすび

本稿では，IWPSE2002 について，その歴史や各セッションの内容について概説した．
ソフトウェア工学の基礎的な分野や個々の要素技術については，それぞれ多くの会議やシンポジウムなどがあり，活発な活動が行われている．しかし，この IWPSE は「ソフトウェア進化」という，目的によって複数の技術が考え得るテーマであり，同じワークショップ内でありながら，多様な技術に関する研究発表を同時に聞くことができた．

-7-