Architectural Repair of Open Source Software
http://web.archive.org/web/20030406224753/http://plg.uwaterloo.ca/~migod/papers/iwpc00.pdf
研究として、Linux と Vim 5.3 についてアーキテクチャの修正を行ったという話。
Vim の方について簡単にメモ。
- 概念的アーキテクチャ
- 設計上のアーキテクチャ
- 具体的アーキテクチャ
- ソースコード上のアーキテクチャ
- anomalies
- 具体的アーキテクチャと概念的アーキテクチャの不一致
- Unexpected dependencies
- 概念的アークテクチャにあるが具体的アーキテクチャにはない依存関係。
- Gratuitous dependencies
- 具体的アークテクチャにあるが概念的アーキテクチャにはない依存関係。
- Forward architecture repair
- 概念的アーキテクチャに合うように具体的アーキテクチャを修正すること。
- Kidnapping
- モジュールなどを移動させる。
- Splitting
- モジュールなどを分割する。
- Reverse architecture repair
- 具体的アーキテクチャに合うよう概念的アーキテクチャを修正すること。
やったこと