Under GPLv3 licence
Download the latest version 2.0
If you use FortranAnslyser, please consider citing it as follows:
García-Rodríguez, M., Añel, J.A., Rodeiro-Iglesias, J. (2024) Assessing and improving the quality of Fortran code in scientific software: FortranAnalyser. Softw. Impacts. DOI: 10.1016/j.simpa.2024.100692
What is FortranAnalyser ?
Here we introduce FortranAnalyser, a Fortran code multi-language static analysis tool cross-platform under GPLv3 licence. It helps to measure the quality of the software for maintenance and refactoring for all versions of Fortran. This tool is made available in four differents languages. FortranAnalyser applies several criteria to score Fortran code.
How I can use it ?
Description
Abstract
At present, there are many software tools that analyse static code from software programs: sonar, PMD, Clang... These tools analyse source code of a programme without execute it. However, it does not exist a tool to perform this kind of analysis for Fortran.
It is clear that a more complete and updated tool to check Fortran code is currently needed, as the options available do not apply the metrics that have others code analysis tools in other programming languages. Some softwares do a lexical analysis from the code, but only a few do a semantical analysis of Fortran code.
FortranAnalyser, has developed and that adapts to the characteristics of the parsing that is wanted to do. It finds common programming flaws on the source code in Fortran for any standard. The program performs an average of the individual scores of the code that will make up the final note of the project.
Introduction
FortranAnalyser is developed in Java. It is multilanguage and cross-platform with GPLv3 licence. When the analysis is done, a quality report is generated in PDF and this file is saved in the temp directory in root directory.
Quality metrics
Here they are exposed the quality metrics that this software check to analyse the quality from the Fortran project selected:
- the use of the "implicit none" statement
- the use of comments in files
- the use of the "exit" statement
- the number of nested loops
- the number of lines with comments
- the use of the "cycle" statement
- full file directory
- file name
- number of lines
- number of funtions
- Number of calls to subroutines
- number of comments
- number of declared variables
- comments:
- on declared functions
- at the beginning of the file
- on declaration of variables
- on declaration of subroutines
- on control structures
- maximum nesting complexity
- number of subroutines
- use or not of the "exit" statement
- use or not of the "cycle" statement
- cyclomatic complexity (McCabe, 1976)
Quality report PDF
Releases
Repository
This project manages the various changes that are made on elements of some product or a configuration thereof with Git. GitLab is a web service of version control and development of collaborative software based on Git.
Contributing
In order to contribute to the project as a developer and help improve FortranAnalyser, it is necessary to follow the instructions described in the CONTRIBUTING.md document of the project. Help us improve the tool.
How to contributing in the project ?
Release notes
Media & Awards
1st Place
Best MSc project on 2019 Awards for Research, Transfer and Scientific Dissemination of Campus da Auga
2nd Place
«Best universitary free software project 2017» from Galicia (Spain) with the master's degree project
Código Cero
«Developed from Ourense a pioneering application for software quality analysis»
La Voz de Galicia
«Interest of NASA for a software quality program devised on campus»
Diario da Universidade de Vigo
«FortranAnalyser, a software quality analysis tool that attracts Nasa's interest»
Mancomún
Michael García, second prize of the 2017 edition of the Best Project award with free licence
FAQs
I download the software, but it does not work.
The solution is very simple.
The problem is probably that you do not have installed Java on your device. In this case, the system usually opens the jar file with the compressed file manager. For resolve this problem, you need to access to the Java official web page and download the latest Java version and follow the installation instructions. After that, execute the jar file again and enjoy FortranAnalyser
Can I use FortranAnalyser in any operative system ?
Of course you can.
FortranAnalyser is developed in Java, so you only need Java installed on your system and it works perfectly.
What are the languages in which it is available FortranAnalyser ?
Five languages are available.
FortranAnalyser is available at this moment in five differents languages:
- Spanish
- Galician
- French
- English
- Portuguese
By default, the application start in English. But if you want to switch to another languages, you only need select the languages menu (upper left part of the window) and change to your preferred language the user interface and the report file.
Contact us
- fortrananalyser@gmail.com
- (Spain) 988 387 427
- Edificio del Campus del Agua - EPhysLab
32004 Ourense
Universidade de Vigo