### Abstract

Today's software systems are more frequently composed from preexisting commercial or non-commercial components and connectors. These components provide complex and independent functionality and are engaged in complex interactions. Component-Based Software Engineering (CBSE) is concerned with composing, selecting and designing such components. As the popularity of this approach and hence number of commercially available software components grows, selecting a set of components to satisfy a set of requirements while minimizing cost is becoming more difficult. This problem necessitates the design of efficient algorithms to automate component selection for software developing organizations. We address this challenge through analysis of Component Selection, the NP-complete process of selecting a minimal cost set of components to satisfy a set of objectives. Due to the high order of computational complexity of this problem, we examine approximating solutions that make the component selection process practicable. We adapt a greedy approach and a genetic algorithm to approximate this problem. We examined the performance of studied algorithms on a set of selected ActiveX components. Comparing the results of these two algorithms with the choices made by a group of human experts shows that we obtain better results using these approximation algorithms.

Original language | English (US) |
---|---|

Title of host publication | Proceedings - 14th Asia-Pacific Software Engineering Conference, APSEC 2007 |

Pages | 159-166 |

Number of pages | 8 |

DOIs | |

State | Published - Dec 1 2007 |

Event | 14th Asia Pacific Software Engineering Conference, ASPCE 2007 - Nagoya, Japan Duration: Dec 4 2007 → Dec 7 2007 |

### Publication series

Name | Proceedings - Asia-Pacific Software Engineering Conference, APSEC |
---|---|

ISSN (Print) | 1530-1362 |

### Other

Other | 14th Asia Pacific Software Engineering Conference, ASPCE 2007 |
---|---|

Country | Japan |

City | Nagoya |

Period | 12/4/07 → 12/7/07 |

### Fingerprint

### All Science Journal Classification (ASJC) codes

- Engineering(all)

### Cite this

*Proceedings - 14th Asia-Pacific Software Engineering Conference, APSEC 2007*(pp. 159-166). [4425850] (Proceedings - Asia-Pacific Software Engineering Conference, APSEC). https://doi.org/10.1109/APSEC.2007.26

}

*Proceedings - 14th Asia-Pacific Software Engineering Conference, APSEC 2007.*, 4425850, Proceedings - Asia-Pacific Software Engineering Conference, APSEC, pp. 159-166, 14th Asia Pacific Software Engineering Conference, ASPCE 2007, Nagoya, Japan, 12/4/07. https://doi.org/10.1109/APSEC.2007.26

**Approximation algorithms for software component selection problem.** / Haghpanah, Nima; Habibi, Jafar; Moaven, Shahrouz; Kargar, Mehdi; Yeganeh, Soheil Hassas.

Research output: Chapter in Book/Report/Conference proceeding › Conference contribution

TY - GEN

T1 - Approximation algorithms for software component selection problem

AU - Haghpanah, Nima

AU - Habibi, Jafar

AU - Moaven, Shahrouz

AU - Kargar, Mehdi

AU - Yeganeh, Soheil Hassas

PY - 2007/12/1

Y1 - 2007/12/1

N2 - Today's software systems are more frequently composed from preexisting commercial or non-commercial components and connectors. These components provide complex and independent functionality and are engaged in complex interactions. Component-Based Software Engineering (CBSE) is concerned with composing, selecting and designing such components. As the popularity of this approach and hence number of commercially available software components grows, selecting a set of components to satisfy a set of requirements while minimizing cost is becoming more difficult. This problem necessitates the design of efficient algorithms to automate component selection for software developing organizations. We address this challenge through analysis of Component Selection, the NP-complete process of selecting a minimal cost set of components to satisfy a set of objectives. Due to the high order of computational complexity of this problem, we examine approximating solutions that make the component selection process practicable. We adapt a greedy approach and a genetic algorithm to approximate this problem. We examined the performance of studied algorithms on a set of selected ActiveX components. Comparing the results of these two algorithms with the choices made by a group of human experts shows that we obtain better results using these approximation algorithms.

AB - Today's software systems are more frequently composed from preexisting commercial or non-commercial components and connectors. These components provide complex and independent functionality and are engaged in complex interactions. Component-Based Software Engineering (CBSE) is concerned with composing, selecting and designing such components. As the popularity of this approach and hence number of commercially available software components grows, selecting a set of components to satisfy a set of requirements while minimizing cost is becoming more difficult. This problem necessitates the design of efficient algorithms to automate component selection for software developing organizations. We address this challenge through analysis of Component Selection, the NP-complete process of selecting a minimal cost set of components to satisfy a set of objectives. Due to the high order of computational complexity of this problem, we examine approximating solutions that make the component selection process practicable. We adapt a greedy approach and a genetic algorithm to approximate this problem. We examined the performance of studied algorithms on a set of selected ActiveX components. Comparing the results of these two algorithms with the choices made by a group of human experts shows that we obtain better results using these approximation algorithms.

UR - http://www.scopus.com/inward/record.url?scp=44949142996&partnerID=8YFLogxK

UR - http://www.scopus.com/inward/citedby.url?scp=44949142996&partnerID=8YFLogxK

U2 - 10.1109/APSEC.2007.26

DO - 10.1109/APSEC.2007.26

M3 - Conference contribution

AN - SCOPUS:44949142996

SN - 0769530575

SN - 9780769530574

T3 - Proceedings - Asia-Pacific Software Engineering Conference, APSEC

SP - 159

EP - 166

BT - Proceedings - 14th Asia-Pacific Software Engineering Conference, APSEC 2007

ER -