Influence on Product Development
Advantages
- Many existing elements available for reuse (what)
- Flexible reuse granularity (how)
- Easier porting (where)
- Improve, fix, support
Problems
- Divergent evolution
- Code bloat
- Inadvertently deep dependencies
- Dependency management
- Licensing
- Quality control