Comparing practices for reuse in integration-oriented software product lines and large open source software projects