The rapid propagation of the Internet and information technologies has changed the nature of many industries. Fast response and personalized recommendations have become natural tr...
Reusing software components (e.g. classes or modules) improves software quality and developer’s productivity. Unfortunately, developers may miss many reusing opportunities since...
In recent years, many systems and approaches for recommending information, products or other objects have been developed. In these systems, often machine learning methods that nee...
Software product line architectures (PLAs) have been widely recognized as a successful approach in industrial software development for improving productivity, software quality and...
When creating new application programming interfaces (APIs), designers must make many decisions. These decisions affect the quality of the resulting APIs in terms of performance (...