Introducing the SymfonyInsight Portfolio
SymfonyInsight helps you create maintainable and robust Symfony projects by giving you actionable metrics and hints about your project’s code.
However, while fixing actual code quality issues is definitely important, it is only a part of the problem. It does not deal with the other side of software quality: human organization. Designing a solution to a problem requires a deep and clear understanding of this problem, and the process in which this understanding happens is another potential source of quality improvement.
This is the reason why we are introducing the SymfonyInsight Portfolio.
Displaying the right information at the right time is key
SymfonyInsight shines at helping you tackle technical quality issues mainly because of a few key features:
- it integrates smoothly in your daily work (commit statuses to Github/Bitbucket/Gitlab, e-mail/Slack notifications, …) ;
- it works on your project’s code itself and is more focused on Symfony than other competitors (it boots your Symfony application to analyse its container, its Doctrine entities, etc.) ;
- it displays aggregated analysis reports alongside your code, providing actionable metrics efficiently.
By focusing on the integration and the aggregation of information, SymfonyInsight is able to display to right information, concisely, right where you need it.
When we started to conceive a feature helping teams improve their projects' quality, we wanted to provide the same quality of concise information. This is exactly the aim of the Portfolio: a single dashboard showing the most important metrics about what is currently happening in your team’s projects, in real time.
The purpose of the Portfolio is to give teams the ability to monitor multiple projects efficiently, both in terms of size and in terms of quality, without having to follow all the pull requests and commits individually. It is designed to give a basis on which better communication about quality can happen.
The Portfolio focuses on the most important elements you need to know for each project:
- the critical issues, including security problems, that need to be fixed as soon as possible ;
- the total technical debt accumulated by your projects (the estimated time a single developer would need to fix all the issues detected by SymfonyInsight) ;
- the size and the size evolution of your projects, in number of lines of code ;
- the quality evolution over time, with a specific details about Performance, Maintainability, Security and Architecture.
It also creates a chart comparing the evolution of technical debt and project size over time, letting you know when you should probably invest on technical debt to avoid it to get out of control.