Details

    • Type: EPIC
    • Status: Closed
    • Priority: Major
    • Resolution: Fixed
    • Labels:
    • Epic Name:
      Drop Global Dashboards

      Description

      Originally, SonarQube was designed as a platform allowing users to :

      • Compute their own quality metrics
      • Define the way they wanted to remediate Technical Debt
      • Go beyond code Quality (for instance to track open Jira bugs, to track result of JMeter execution, ...)

      At that time, providing a way to fully configure project and global dashboards was a must-have because it was not possible to know what mattered for each user.

      But over the last few months:

      • The scope of use of SonarQube has been officially limited to the analysis of source code
      • The SonarQube Quality Model was designed around the concepts of code smells/maintainability, bugs/reliability, vulnerabilities/security and quality gates/releasability
      • And the "water leak" metaphor has become "the way" to remediate Quality Issues.

      So instead of delegating to users the responsibility to configure dashboards to define the way to use SonarQube, we will take the responsibility at SonarSource to provide a unified user experience that "guides" users on the best ways to maximize their use of SonarQube. Moreover as a configuration effort is currently required through dashboards to cover some valuable use cases, some (if not most) users are not even aware that those use cases can be covered with SQ since they haven't made the effort to configure global dashboards.

      The first important step in that direction was taken in SQ 5.4 to provide a unified project landing page. To complete this effort, we will drop the concept of configurable dashboards altogether. Removing project dashboards has been done without introducing any new features, but what about global dashboards? Moreover dropping global dashboards might be a good opportunity to reinforce already existing services like "My Space", the View homepage, ...

      Further, by dropping dashboards, we loose what turns out to be one of the two main use cases of the Measure page: saving a search to present on a dashboard. Ad hoc project search is the other main use case. We will address both of those with a new, more intuitive Projects space.

      Use Cases

      If we make the assumption that global dashboards are going to disappear, here are the use cases we need to cover very well out-of-the-box with SonarQube:

      • As an anonymous user I expect the default landing page to
        • encourage me to log in to get the most out of SonarQube
        • present some basic, introductory data to orient new users on the following topics
          • The SonarQube Quality Model, and Bugs, Vulnerabilities, Code Smells
          • The Leak concept
          • Quality Gates
          • Quality Profiles, rules, and the standards we support
        • This page will present no unique data, and will disappear after login
      • As a developer
        • I'd like to visualize the latest issues I've introduced across projects
        • I'd like to see my all-time open issues
        • I'd like to see the latest updated issues assigned to me
        • I'd like all that available in "My Activity" and that "My Activity" becomes my default landing page when logged in
      • As a manager/lead developer/architect
        • I'd like to quickly access to the "Leak Perspective" Because I want to be able to quickly pinpoint projects or teams/views in trouble in terms of releasability (New Bugs, New Vulns, New Tech Debt, New Missing Coverage) relative to New LoC. Five new bugs in 5 new LoC is different that 5 new bugs in 1k new LoC. All 10 still need to be fixed, but the first team likely faces a more serious problem.
          • On project I've contributed LoC to
          • On my favorites
          • On projects I have admin rights for
          • Of the projects of a view if I'm using the Enterprise Edition
      • As an executive or manager:
        • I'd like to quickly access my favorite views
      • As the administrator of an Enterprise SonarQube instance
        • I should be able to make a 'view' the default landing page for some users (the executives or managers) ??
        • I should have my own default landing page which shows
          • Administrative/configuration activitiy
          • ...

      An initial version should have the new Projects space, and three SonarQube homepages:

      • Anonymous landing page
      • My Activity (default when authenticated)
      • My Team space (inside a view or a global level)

      Other landing pages can wait.

      Navigating among landing pages them

      By default when clicking on "My Account", the tab which is displayed would be simply the latest tab used by this user during his latest session.
      The user may override this behavior by making a "sticky" choice

      Open Questions

      • Which home page do I see the very first time I log in?
      • Will the API's to add other "home" pages be public?

        Attachments

          Issue Links

            Activity

              People

              • Assignee:
                ann.campbell.2 Ann Campbell
                Reporter:
                ann.campbell.2 Ann Campbell
              • Votes:
                0 Vote for this issue
                Watchers:
                5 Start watching this issue

                Dates

                • Created:
                  Updated:
                  Resolved: