Notice: This Wiki is now read only and edits are no longer possible. Please see: https://gitlab.eclipse.org/eclipsefdn/helpdesk/-/wikis/Wiki-shutdown-plan for the plan.
MaturityAssessmentCheckList
This page lists the information and requirements needed for a project to be analysed through the Maturity Assessment process.
The whole analysis process has been automated on a dedicated Hudson instance: dashboard.polarsys.org/hudson. The list of projects analysed can be found here: MaturityAssessmentProjects.
Full list of data
The analysis process relies on a number of information to compute the values for the quality model:
- A sonar instance, which implies a Tycho build. See this page for more information on how to set it up.
- An entry in the Project Management Infrastructure, and the associated JSON file -- automatically generated from the entry in the PMI database.
- The URL of the project on the marketplace, for the usage metrics (note: those are disabled for now).
- A mailing list for developers and a forum for users (which is the convention at Eclipse). These are analysed by the [http;//dashboard.eclpise.org Eclipse dashboard] and reused by the maturity assessment process.
- A Git repository to retrieve configuration management metadata. These are analysed by the [http;//dashboard.eclpise.org Eclipse dashboard] and reused by the maturity assessment process.
- A Bugzilla instance to retrieve ITS metadata. These are analysed by the [http;//dashboard.eclpise.org Eclipse dashboard] and reused by the maturity assessment process.
The following data is also computed during the analysis process:
- Output of PMD 5.2.3 analysis in XML format, with the following rulesets activated: basic, design, empty, unused, coupling. Runs on sources retrieved from the configuration management system.
- Output of Findbugs 3.0.0 analysis in XML format -- needs a compiled version of the product, which is retrieved from the Hudson instance of the project.
Example project
The above information, as applied to the CDT projet, is as follows:
- Sonar:
Information for the Hudson build
The process has been automated as much as possible; whenever the information could be retrieved automatically a script does it for you. As a consequence, only a few information is needed when building a project:
- The project ID (e.g. tools.cdt) is used to build the query for the PMI, and to read files from the Eclipse dashboard (scm, its, mls, sonarqube).
- The URL to the marketplace (e.g. http://marketplace.eclipse.org/content/eclipse-cdt-cc-development-tooling/api/p ), for the usage metrics (note: those are disabled for now).
- The URL to the update site zip file on the project Hudson instance (e.g. https://hudson.eclipse.org/cdt/job/cdt-master/lastSuccessfulBuild/artifact/releng/org.eclipse.cdt.repo/target/org.eclipse.cdt.repo.zip ). The zip file is then retrieved, expanded and its plugin directory analysed by FindBugs.
- The URL to the main git repository of the project. This is used to fetch the project and run PMD.