1.

Record Nr.

UNINA9910409677903321

Autore

Diamantopoulos Themistoklis

Titolo

Mining Software Engineering Data for Software Reuse / / by Themistoklis Diamantopoulos, Andreas L. Symeonidis

Pubbl/distr/stampa

Cham : , : Springer International Publishing : , : Imprint : Springer, , 2020

ISBN

3-030-30106-0

Edizione

[1st ed. 2020.]

Descrizione fisica

1 online resource (XXI, 242 p. 174 illus., 103 illus. in color.)

Collana

Advanced Information and Knowledge Processing, , 1610-3947

Disciplina

005.1

Soggetti

Software engineering

Engineering—Data processing

Data mining

Open source software

Computer programming

Management information systems

Software Engineering

Data Engineering

Data Mining and Knowledge Discovery

Open Source

Software Management

Lingua di pubblicazione

Inglese

Formato

Materiale a stampa

Livello bibliografico

Monografia

Nota di contenuto

Part 1: Introduction and Background -- Introduction -- Theoretical Background and State-of-the-art -- Part II: Requirements Mining -- Modelling Software Requirements -- Mining Software Requirements -- Part III: Source Code Mining -- Source Code Indexing for Component Reuse -- Mining Source Code for Component Reuse -- Mining Source Code for Snippet Reuse -- Mining Solutions for Extended Snippet Reuse -- Part IV: Quality Assessment -- Providing Reusability-aware Recommendations -- Assessing the Reusability of Source Code Components -- Part V: Conclusion and Future Work -- Conclusion -- Future Work -- Bibliography .

Sommario/riassunto

This monograph discusses software reuse and how it can be applied at



different stages of the software development process, on different types of data and at different levels of granularity. Several challenging hypotheses are analyzed and confronted using novel data-driven methodologies, in order to solve problems in requirements elicitation and specification extraction, software design and implementation, as well as software quality assurance. The book is accompanied by a number of tools, libraries and working prototypes in order to practically illustrate how the phases of the software engineering life cycle can benefit from unlocking the potential of data. Software engineering researchers, experts, and practitioners can benefit from the various methodologies presented and can better understand how knowledge extracted from software data residing in various repositories can be combined and used to enable effective decision making and save considerable time and effort through software reuse. Mining Software Engineering Data for Software Reuse can also prove handy for graduate-level students in software engineering.