Software performance tuning of software product family architectures: Two case studies in the real-time embedded systems domain