CROSSMINER enables the monitoring, in-depth analysis and evidence-based selection of open source components, and facilitates knowledge extraction from large open-source software repositories.
Developer-Centric Knowledge Mining from
Large Open-Source Software Repositories
Technology Innovations
Cross-Project Relationships
Tools for specifying, discovering and representing different project relationships, based on extracted metrics and on similarity measures underpinning automated creation of clusters.
Advanced IDEs
Eclipse-based IDE to support development of software systems including a wizard for specifying project components that developers want to reuse in developing new products.
1. Open Source Mining
2. Knowledge Extraction
3. Quality Monitoring
Helping software developers select the right open source components.
CROSSMINER supports the development of software systems for a wide range of applications and provides techniques and tools for extracting knowledge from existing open source components, and to use this knowledge to select and reuse the best existing software to develop new systems. Selected open source components are monitored to raise alerts related to quality, and to give suggestions to reduce development effort and increase the quality of new software products.
Industrial Impacts
Reduction in time-to-market of new generations of software enabled products and services as open source continues to speed innovation, disrupt industries, and improve productivity. CROSSMINER targets the development of new software systems by providing advanced techniques and tools supporting the identification and adoption of existing high-quality open source software components instead of implementing in-house proprietary solutions with similar functionalities. The activity of open source developers is continuously monitored in order to give suggestions and to raise alerts in case of potential problems related to adopted components.
​
Substantial productivity increase in all aspects of the software lifecycle especially for distributed systems. The CROSSMINER platform will support the complete lifecycle of software projects, starting with supporting the decision making process involved in evaluating and selecting open source software that needs to be used in a software project, and monitoring the selected open source software throughout the lifecycle of the project in order to ensure that after its selection it continues to be actively maintained and supported, and if not, to suggest alternative software that can replace it. The CROSSMINER IDE will support developers during different development activities and high-level indicators related to the source code development activity and quality will be provided.
Ability to meet software quality levels required by a fast growing number of software-enabled products and services. According to a survey conducted by Forrester Research, the quality of open source software met or exceeded the expectations of 92% of respondents. Meanwhile, 87% of respondents said that open source software delivered the cost savings they were hoping for. In order to take advantage of the benefits related to the adoption of open source components to develop new systems, the CROSSMINER platform automatically classifies projects with respect to a number of aspects and quality attributes and will permit developers to identify and select reusable high quality open source components to develop new products.
​
Increased reuse of code, design and functional requirements in the development of new software. The CROSSMINER platform will support the identification of high-quality open source projects that can be reused to develop new systems. To this end the management of a knowledge base will be conceived in order to store information extracted from existing open source projects (by mining source code, system configurations, and natural language sources) and automatically manipulated to detect further insights like project dependencies, conflicts, licence compatibilities, and other aspects. The envisioned knowledge base will play a key role during both the selection and the adoption of open source components, and during the development of new systems.
​
Source Code Mining
Text Mining
Configuration Mining
Knowledge Extraction
Cross-Project Reliationships
Advanced IDEs