Choice of tools and rationale behind it. - theolind/mahm3lib GitHub Wiki

During the project Eclipse is used as IDE, GitHub as version control, Trello as project manager tool and Doxygen as document generator.

Why use Eclipse as IDE?

The main advantage with Eclipse is that it is cross platform. It works on Windows, Mac OSX and Linux. Eclipse has full support for several languages, including C. Also the advantage that it is lightweight and can be run from a USB pen drive. This ability means that every developer can code on any computer, with his specific configuration. Considering this is a project run by students from Malmö University, they will most likely be coding on computers located on campus. This means that every time the team member uses a new computer, the team member will have to make configurations to make the IDE work with the Arduino Due.

Other IDEs we considered were Atmel Studio and Microsoft Visual Studio. Both IDEs was rejected due to the major disadvantage that they are only available for Microsoft Windows. It would however be possible to run them on a virtual machine but it would mean rather slow performance.

Why use GitHub as version control?

Every member of the team has previous experience from GitHub and was chosen. GitHub also meet the demands needed for version control. It is configurable (e.g. to use ignore on compiled files, only include .c and .h-files), cross-platform and it is possible to have a Wiki for the project. GitHub can also host .html-files which comes handy when dealing with documentation (see Doxygen).

Why use Trello as a project manager tool?

Trello is easy to understand. It is possible to set up tasks for every sprint as boxes and give them labels (planned, in progress, done). Every team member can also see who is responsible for each task in progress. A task can easily be assigned to a member and moved to another label.

Why use Doxygen as document generator?

Doxygen has the possibility to generate online documentation (in HTML) from code. The document generator scans the source code and can index it before creating .html-files. Doxygen can also get the source code from the repository at GitHub. HowTo: Use Doxygen with GitHUB. Integrating Doxygen with Eclipse