14
発表論文 タイトル Granularity in Software Product Lines(プロダクトライン中の粒度) 著者 Christian Kastner, Sven Apel , Martin Kuhlemann 出典 30rd International Conference on Software EngineeringICSE 20080

2008 icse-granularity in software product lines

  • Upload
    n-yuki

  • View
    334

  • Download
    3

Embed Size (px)

DESCRIPTION

 

Citation preview

Page 1: 2008 icse-granularity in software product lines

発表論文

• タイトル

「Granularity in Software Product Lines」

(プロダクトライン中の粒度)

• 著者

– Christian Kastner, Sven Apel , Martin Kuhlemann

• 出典

– 30rd International Conference

on Software Engineering(ICSE 2008) 0

Page 2: 2008 icse-granularity in software product lines

概要

• 目的

→ SPL開発の際に、細かい粒度で機能を拡張できる

ようにするため

• 手法

→ 2つのアプローチにおける、

フィーチャの粒度の影響を分析

→ フィーチャの要素をコードに関連付けるツール

(CIDE)を作成

• 結論

→従来アプローチと比較し、より細かい粒度で機能を

拡張できることを確認 1

Page 3: 2008 icse-granularity in software product lines

SPL(Software Product Line)

• 既存システムを再利用して、システム開発

2

再利用資産の開発

新製品の開発

いかに効率よく再利用資産を作れるか

Page 4: 2008 icse-granularity in software product lines

再利用資産の開発

• 既存システムをフィーチャ(機能)に分ける

3既存システム

Page 5: 2008 icse-granularity in software product lines

粒度の粗い拡張(フィーチャを追加・変更可能)

• 構成のアプローチ

4

ロック機能を追加

ログ記録機能を追加

一般的なスタック

フィーチャの追加

Page 6: 2008 icse-granularity in software product lines

構成のアプローチの問題点

再利用する際に、既存システムの

フィーチャの中身を変更できるようにしたい

フィーチャの要素まで考慮した

粒度の細かい拡張が必要

構成のアプローチには

制限(ステートメント拡張、表現拡張、署名変更)があり、粒度の細かい拡張が困難 5

Page 7: 2008 icse-granularity in software product lines

粒度の細かい拡張1(フィーチャの要素を追加・変更可能)

• 注釈つきのアプローチ(可読性に難あり)

6

TXNが定義されていたら

Page 8: 2008 icse-granularity in software product lines

CIDEの概要

• フィーチャの要素にコードを関連づける

7

Page 9: 2008 icse-granularity in software product lines

CIDEの概要2

• Feature Code

– フィーチャの要素と、それに対応する部分の

コードの色が変わる

• Overlapping Features

– コードに対応するフィーチャが複数ある場合、

色が混ざる

• Hidden Code

–不必要だと判断したフィーチャは、

隠すことができる8

Page 10: 2008 icse-granularity in software product lines

CIDEの実行1

1. ソースコード(Java)を入力

2. フィーチャモデルを作成

9

Page 11: 2008 icse-granularity in software product lines

CIDEの実行2

• コードとAST(Abstruct syntax tree)の対応

10

関連付けられる

Page 12: 2008 icse-granularity in software product lines

Case Studies

• Berkeley DB

– 38のフィーチャが1144の要素に拡張された

– 75%が正常に拡張できた

– 25%は表現レベル・ステートメントレベルの拡張が必要だった

– Wormhole Patternを実装し、100%正常に拡張できた

11

Page 13: 2008 icse-granularity in software product lines

まとめ

SPLの再利用資産開発のアプローチには

構成のアプローチと注釈つきアプローチがある

フィーチャの要素レベルでの拡張は

注釈つきアプローチで行う

フィーチャの要素にコードを関連付ける

ツールCIDEを開発

従来アプローチと比較し

より細かい粒度で機能を拡張できたことを確認12

Page 14: 2008 icse-granularity in software product lines

私見

• 長所

–筆者が関連研究を十分に調査している

–従来研究と違い、フィーチャの細かい要素まで

考慮している

–ケーススタディで上手くいくまで推敲している

• 短所

–説明が省略されていて、既存研究を理解しないと本質がわからない

–特に肝心のソースコードの拡張・CIDEの部分の説明が足りない 13