Case Study: How a FinTech Company Improves Code Review Process

June 30, 2020
#Bitbucket#Case Study
7 min

We’ve got pretty good with our Pull Request and Code Review process, but initially, our PRs were complex, not very well documented, and difficult to read. The Resolution Time Distribution graph shows how better we are getting at this, being able to merge PRs much quicker than before.

Pablo Reyes, VP Engineering at Strands

Strands is one of our customers that has been using Awesome Graphs for Bitbucket for a couple of years so far. Since 2004, Strands has been developing highly customizable digital money management software for top-tier financial institutions worldwide. Our team is happy to help them reach their goals and improve their development processes with the statistics visualizations we provide.

Pablo Reyes, VP of Engineering at Strands, shared best practices on how their team effectively uses our solution to:

  • identify bottlenecks in code review
  • track the process improvement with the implemented changes
  • increase developers’ motivation by keeping an eye on their performance trends.

Code review process improvement

In fact, they’ve got pretty good with their Code Review process so far. But initially, the PRs were complex, poorly documented, and difficult to read. The Resolution Time Distribution report shows how better they are getting at this, merging PRs much quicker than before. code review process improvement in Bitbucket

Since they do a lot of code reviews at Strands, it’s always nice to see who and what teams are making the best use of it. It’s motivating for the team to see the progress, and the Pull Requests reports give them the perfect overview of these advancements.

A couple of years ago, they started improving their code review process. For example, they introduced the practice of approving PRs by at least three people. Moreover, they encouraged developers to leave many comments and suggestions and only approve a PR once it’s good enough.

As a result, PRs are resolved faster, not only because they are done better but also because the quality of suggested improvements rises constantly. The Contributions report gives an overview of code review activity and whether it improves or not.

contributions report in Bitbucket

Software development tracking

At Strands, managers don’t use Awesome Graphs to control the number of commits per developer. Still, they find it useful to look at the dynamics of the overall activity to capture the code development trends. For example, if there’s a significant drop, the developer is probably stuck at difficult tasks or disturbed by various activities, helping other teams or communicating with customers.

Most things are caught soon in the day-to-day communication and work, but mid-term changes in the trend (either a decrease or increase) give them a hint of something they may need to look at. This has been visible when people change projects or teams.

The developer’s Contributions graph gives a clear view of this kind of drops and rises, and it’s handy to compare two periods before and after certain changes were implemented.

developer contributions in Bitbucket

Any emerging trend serves as a valuable point for discussion, enabling the team to identify potential bottlenecks or areas that can be enhanced within their software development process. Developers’ performance is complex and depends on lots of different things, some quantitative and some qualitative. Still, the aggregation of code contributions (comments, pull requests, tasks solved, commits, etc) gives some good indicators of how a team evolves with time.

Along with the others, the Contributors graph provides insights into the dynamics of code contributions by different teams and helps with software development tracking.

software development tracking

Try the best teams’ practices for your company

Awesome Graphs for Bitbucket has become a helpful tool for Strands to identify problem areas  in their processes and track whether the implemented changes improve them. Besides, it is a handy instrument for regular monitoring of software development.

Try Awesome Graphs for Bitbucket for free and discover how it can benefit your workflow.

Read more case studies to see how our customers benefit from using Awesome Graphs for Bitbucket in their work:

Related posts

    Remote Teams Management: How to Turn Data into Code Review Insights

    March 17, 2020
    #Reporting#Analytics#How To#Bitbucket
    12 min

    Remote teams management can be quite challenging. Distance makes it more difficult to monitor your distributed team activity. So, you have to either rely on them, hoping it won’t end up as a disaster, or annoy developers with overcontrol.

    Fortunately, there’s no need to go blindly as you can go data-driven and use the statistics of developers’ activity to your advantage.

    In this article, we focus on pull requests metrics as a way to identify bottlenecks in the code review process and check if it’s healthy or not. You will find the answers to the following questions:

    • What metrics to choose as a subject to analyze and how to organize them.
    • How to retrieve them using Bitbucket REST API.
    • How to interpret metrics to get as many insights as possible.

    Pull Requests status dashboard

    If you want to keep in touch with the pull requests on your project status, you may find it useful to create a dashboard that visualizes the statuses of pull requests. This helps you see:

    • the number of pull requests your team created for the last week/month/sprint
    • how many pull requests are already merged and which of them are still open
    • if there are any pull requests open long ago and are not merged yet.

    You can retrieve this data using this Bitbucket REST API request:

    https://your-bitbucket-url/rest/api/1.0/projects/{projectKey}/repos/{repositorySlug}/pull-requests?state=all

    Get the following information from the returned results: pull request ID, state, and the date it was created and merged in the Unix time format.

    {
        "size": 25,
        "limit": 25,
        "isLastPage": false,
        "values": [
            {
                "id": 13,
                "version": 13,
                "title": "Looking for Sarah Connor",
                "description": "Trying to save the Future",
                "state": "MERGED",
                "open": false,
                "closed": true,
                "createdDate": 1583837364846,
                "updatedDate": 1583843660283,
                "closedDate": 1583843660283,
                "fromRef": {},
                "toRef": {},
                "locked": false,
                "author": {
                    "user": {
                        "name": "arnie",
                        "emailAddress": "arnie@stiltsoft.com",
                        "id": 3,
                        "displayName": "Arnie",
                        "active": true,
                        "slug": "arnie",
                        "type": "NORMAL",
                        "links": {},
                    "role": "AUTHOR",
                    "approved": false,
                    "status": "UNAPPROVED"
                },
                "reviewers": [
                    {
                        "user": {
                            "name": "sarahconnor",
                            "emailAddress": "sarahconnor@stiltsoft.com",
                            "id": 4,
                            "displayName": "Sarah Connor",
                            "active": true,
                            "slug": "sarahconnor",
                            "type": "NORMAL",
                            "links": {},
                        "lastReviewedCommit": "",
                        "role": "REVIEWER",
                        "approved": true,
                        "status": "APPROVED"
                    }
                ],
                "participants": [],
                "properties": {
                    "resolvedTaskCount": 3,
                    "commentCount": 1,
                    "openTaskCount": 0
                },
                "links": {}
                    ]
                }
            },

    Then create a script that parses these data and turns it into a pull requests status dashboard. 

    There are some possible difficulties you may face due to the REST API restrictions:

    • The number of returned results is limited, so you’ll have to make several requests to retrieve all data.
    • It’s only possible to run the query on a repository level, so the more repositories you have, the more requests you’ll need to make.
    • The Bitbucket performance may be affected in large instances.

    The same can be done using the Pie Chart report in Awesome Graphs for Bitbucket. Grouped by state, it shows the number of pull requests created during the chosen time span with their current statuses. 

    Pull request metrics - check status of pull requests

    Tip: find pull requests created long ago and not merged yet by selecting a previous week or month as a period to analyze.

    Reviewers’ involvement

    Another pattern to watch is whether all team members participate in the code review. If not, there are some possible consequences:

    • knowledge sharing in a team is poor, and junior developers miss the opportunity to grow their skills without watching the examples of more experienced programmers’ work
    • pull requests resolution may be slow if there are more pull requests created than people who can review it
    • those who review all pull requests may have no time to write new code.

    The same REST API request from the previous paragraph retrieves the data about the participants of pull requests. Organize these data as a list of reviewers and the number of pull requests they reviewed to get insights about the developers’ involvement in the peer review. 

    The Pie Chart report grouped by reviewer serves the same purposes and gives you a breakdown of pull requests reviewed by all members of your team.

    Analyze how your team is involved in the code review process

    Tip: pay attention to pull requests that are merged without reviewing. Those are the areas where you may have a risk as the code was not checked as appropriate. 

    Reviewers’ activity chart

    The difference between just being assigned as a reviewer and truly reviewing the new code and suggesting improvements to it is huge. Luckily, there are a couple of metrics to watch that may help you get a clear view of the thoroughness with which developers check each other’s work.

    Use this REST API request and retrieve the data about the number of tasks, comments, needs work, or approved actions per pull request and group it by user:

    https://your-bitbucket-url/rest/api/1.0/projects/{projectKey}/repos/{repositorySlug}/pull-requests/{pullRequestId}/activities

    The example of the returned results with the data that needs to be parsed:

    {
        "size": 5,
        "limit": 25,
        "isLastPage": true,
        "values": [
            {
                "id": 46766,
                "createdDate": 1574762295000,
                "user": {
                    "name": "sarahconnor",
                    "emailAddress": "sarahconnor@stiltsoft.com",
                    "id": 3,
                    "displayName": "Sarah Connor",
                    "active": true,
                    "slug": "sarahconnor",
                    "type": "NORMAL",
                    "links": {}
                },
                "action": "MERGED",
                "commit": {}
            },
            {
                "id": 46756,
                "createdDate": 1574690608000,
                "user": {
                    "name": "johnconnor",
                    "emailAddress": "johnconnor@stiltsoft.com",
                    "id": 652,
                    "displayName": "John Connor",
                    "active": true,
                    "slug": "johnconnor",
                    "type": "NORMAL",
                    "links": {}
                },
                "action": "APPROVED"
            },
            {
                "id": 46688,
                "createdDate": 1574431693000,
                "user": {
                    "name": "arnie",
                    "emailAddress": "arnie@stiltsoft.com",
                    "id": 4,
                    "displayName": "Arnie",
                    "active": true,
                    "slug": "arnie",
                    "type": "NORMAL",
                    "links": {}
                },
                "action": "COMMENTED",
                "commentAction": "ADDED",
                "comment": {
                    "properties": {},
                    "id": 6569,
                    "version": 0,
                    "text": "i need your jacket, boots, and motorcycle",
                    "author": {}
                    },
            {
                "id": 46668,
                "createdDate": 1574418254000,
                "user": {
                    "name": "sarahconnor",
                    "emailAddress": "sarahconnor@stiltsoft.com",
                    "id": 3,
                    "displayName": "Sarah Connor",
                    "active": true,
                    "slug": "sarahconnor",
                    "type": "NORMAL",
                    "links": {}
                },
                "action": "OPENED"
            }
        ],
        "start": 0
    }

    The visualization of the developers’ activity in pull requests provides you with the following insights:

    • Most active reviewers in your team. These people check the code thoroughly. On the other hand, this pattern may have negative sides if the perfectionism slows down the feature delivery too much.
    • Infrequent participants in the code review. These developers are not involved in the knowledge sharing process for some reason. Do they skip this part of work intentionally, or are they afraid to criticize their colleagues’ work? 
    • Periods with unusual activity. Check the values that go beyond the trend to find the answer to why the reviewer had to leave too many or too little comments. For example, there can be bad code or the pull request was too large, and nobody wanted to check it. These are the patterns that you’d definitely like to avoid.

    The Contributions report provides the same view across projects and repositories with the swift access to each pull request in Bitbucket so you could check its content.

    Apply a data-driven approach in remote teams management

    Tip: group this report by author to see who receives the largest number of tasks and comments in their pull requests. This may be a sign of a code that took lots of re-writing and may lead to bugs in the future. Besides, looking at the dynamics of these numbers makes it obvious if developers are improving their working patterns or not.

    Try the data-driven approach to bring transparency into your code review processes

    Tracking developers’ activity may be especially important in remote or distributed teams where it’s impossible to reach each other physically. 

    However, the benefits that software development metrics bring are valuable for any company as they help:

    • find areas to improve in code review processes
    • optimize peer review practices
    • avoid slowdowns and poor quality code. 

    Create your dashboard using the Bitbucket REST API or try Awesome Graphs for Bitbucket for free to discover how you can benefit from it!

    Related posts

      Introducing New Feature: Graphs for Teams in Awesome Graphs

      December 3, 2019
      #Reporting#Analytics#News#Bitbucket
      7 min

      There is no doubt that effective working and communication processes in a team greatly influence the overall success of a product or company. Atlassian products like Bitbucket, Jira, and Confluence aim to improve collaboration and bring distributed colleagues together.

      Awesome Graphs for Bitbucket app is our contribution to the teamwork of more than 2,000 companies, as its primary goal is to help identify the bottlenecks in the development workflow and increase the speed. We are eager to make the processes transparent for both developers and managers and, thereby, improve the communication and narrow the gap between them.

      We’ve discovered that lots of our clients use similar workflows: they have multiple teams working on the same project or repository. Therefore, tracking the productivity of a particular group that a project or delivery manager, or team lead manages can be tricky as the app showed graphs for all the activity across a project or repository that included the statistics about all the teams together. That’s why we decided to implement a feature that can make their lives easier: graphs for teams.

      View the statistics for your team

      Teams feature is designed to visualize the statistics about your team performance if there’s a lot of people working on a project or repository. It excludes the contributions of the members of other teams and helps get rid of noisy data.

      Configure your teams in the settings and choose it in the All contributors drop-down menu on the Graphs page and analyze how much commits, pull requests, and lines of code a team produces apart from others.

      Compare the activity of different teams

      If you manage multiple teams working on the same project or repository, you may find it useful to separate their statistics from each other.  For example, compare their impact in a codebase of your repository using the Code Frequency graph. That’s what you can easily do with our new feature!

      Let’s say you manage two teams: back-end and front-end developers. Open a graph for each team in different tabs and compare their performance.

      From the screenshot below, you may identify that your back-end team is continuously deleting the lines of code. They are probably involved in some bug fixing or refactoring activities or implement changes in the API.

      Meanwhile, the front-end team has to rewrite some pieces of code to adjust the changes in the backend.

      Exclude automated users from the statistics

      If you use automation in your repositories, the graphs may show the information that is not related to the activity of your team. Lots of commits and lines of code added by CI/CD users and automated scripts may complicate the performance analysis since it’s not obvious which contributions are made by real people and which of them are not.

      Use teams feature to solve this problem by creating a team with all the people you need except for the automated users.

      Teams management

      A team can be made on the global, project, and repository level by the user with administrative permissions on this level. A team can include whole Bitbucket groups or individual users.

      It’s possible to create a global team in the Teams tab in the Administration page and view graphs for it in all projects and repositories.

      There’s no need to disturb your Sys Admins from their work to create a team. If you’re a project or repository admin, you may do it in the Teams tab in the settings. In this case, your teams’ graphs will be available only in your repository or project and higher.

      Improve your teams’ activity tracking

      At the moment, graphs for teams are available only for the Graphs page, but we’ll add this feature to the People page and Reports soon in the next releases.

      Try a new version of Awesome Graphs for Bitbucket to get even more useful insights on your team productivity and compare the activities of different teams!

      We are delighted to implement the team feature that our customers were asking for, and we hope to make their working process a bit easier and better! So, we appreciate any feedback on the app and suggestions that could help you get the most benefit from Awesome Graphs. If you have any, please, feel free to write to us here as we’re looking forward to learning about your needs!

      Related posts

        How to Easily Adjust Templates in Atlassian Confluence

        August 15, 2019
        #Case Study#How To#Confluence
        9 min

        In its 15 years of existence, Confluence has become one of the leading solutions for building knowledge bases and creating documentation together with your team. However, a lot of companies are still getting used to the new software after migration and a lot of organizations that use Atlassian products still hire new employees without Confluence experience.

        Naturally, novice Confluence users have lots of questions about the new software:

        • How to create required documents and format their content?
        • How to protect sensitive data and share public information?
        • How to organize meetings and discuss projects?

        You can use various Confluence features to achieve your goals and automate everyday routine tasks. But sometimes it is not obvious for novice Confluence users what tools to choose for this or that case. So, they reach out to more experienced colleagues or may post questions on the Atlassian Community. For example, we’ve recently found a lot of questions about Confluence templates there.

        Atlassian community questions

        A template is one of the most useful Confluence features that can significantly ease your working life. After reading this blog post, you will be able to use templates freely.

        Use case: creating and managing release notes

        Imagine that you work in a software company that uses Confluence on a regular basis. Your department has a real disaster with its release notes pages. Everybody creates them chaotically at different levels of the space page tree. Besides, your colleagues use their own page structures and decide what information to add themselves. Every page looks differently. The users also give various page titles and forget to add labels. So, it is rather difficult to find the required data.

        Let’s use Confluence templates and deal with this mess together.

        What is a template?

        A template is a Confluence page with predefined content. There are two kinds of templates:

        • Global templates that are available in every space of your corporate Confluence site. These templates are defined by your Confluence administrator.
        • Space templates that are used in a specific space. Space templates are defined by space administrators.

        Why do you need templates?

        You can create new pages based on templates and save your time on content formatting. Just click the “Create from template” button and choose the required item. Let it be the standard “Meeting notes” template.

        Jira templates

        Now you can follow the instructional text and fill out the required fields of your document. Note that all instructional text disappears as you type in your own information. You also can’t see instructional text while viewing a page.

        Meeting notes template

        When you create a page from a standard built-in Confluence template for the first time in a space, a new shortcut and an index page will be created. Space shortcuts allow you to access your pages quickly and easily. The index page displays a list of pages based on this template and certain summarized information about them.

        meeting notes in Confluence

        Here is an example of the “Meeting notes” index page:

        Meeting notes index page

        Where can you find templates?

        If you have the Space admin permission, go to the Space tools menu and find the Content tools → Templates. Here you can see all the space templates: built-in and customized (created by the space administrators).

        Confluence space templates

        What can you do with templates?

        You can easily adjust Confluence templates for your needs:

        • Promote a template if you want your colleagues to pay attention to it and begin to use it constantly. All other templates will be hidden under the Show more linkIf someone uses the Show more link more than three times in a single space, the dialog will show you all the templates by default from then on.

        Promoted template in Confluence

        • Edit an existing template to customize it: add and delete macros, variables, tables, labels, images, and instructional text. Work with your template like with any other Confluence page. The only difference is that you can’t upload images or attachments directly to your template, but you can find them on other pages. Having a special page as a resource library for these types of things is recommended.
        • Create new templates if you have any specific corporate documents that you want to use in Confluence.
        • Delete/disable a template if you don’t want it to be available in this space.

        Note that you can use page templates only when you add a page. It is not possible to apply a template to an existing page.

        Let’s resolve your case

        Now that we are done with the theory, let’s return to your task.

        Step 1. Design your own template

        As there are no any built-in “Release notes” Confluence templates, you need to create your own new template. Feel free to use instructional text and don’t forget to add labels if you want to assign them automatically.

        To add instructional text go to the Template menu of your toolbar and choose the corresponding item.

        Create release notes template in Confluence

        Step 2. Share your template with the team

        Now you need to show your colleagues that the “Release notes” template exists. You can just promote it.

        Promoted release notes template

        Step 3. Get your page tree organized

        Now you need to organize all your future release notes pages within the space. Create a new parent page for them and add the “Create from template” macro to it. Edit the macro body as it’s shown in the slide below: choose your new template and customize page titles. Now your colleagues can easily create release notes pages directly from this parent page. 

        Create from template macro

        Check the results

        From now on the release notes pages will have the same structure, titles, labels, and parent page. Your space will be organized neatly, and it will be much easier to find relevant content.

        Confluence templates

        How to quickly learn all Confluence features?

        If you want to know more about real-life challenges in Confluence, take our free Quick Start with Confluence training course.

        Our motto is “one use case, one module”. You’ll learn everything you need for the case in the corresponding lesson and boost your productivity immediately.

        How to Perform Code Review and Track Team Activity in Bitbucket

        August 8, 2019
        #Bitbucket#Case Study#How To
        6 min

        Resolution Time Distribution Reports have helped a lot during the development of a high priority module to increase the reviewers, review frequency and also track team activity in Bitbucket.

        Eduard Pal, Innoface

        Innoface GmbH, one of our customers, is one of the leading providers of interfaces between PDM and ERP systems worldwide. Its applications help ensure a direct and reliable flow of information between engineering and logistics. They also offer additional products and services in order to facilitate seamless integration of the involved systems.

        Innoface product development team uses Awesome Graphs for Bitbucket mostly for making data-driven management decisions. They find it very useful to:

        • track the activity of each developer and a team in general;
        • check if code review goes according to the plans;
        • predict time to resolve pull requests.

        Let’s see how Innoface benefits from using Awesome Graphs for Bitbucket.

        Tracking team activity in Bitbucket

        Activity graph helps Innoface have a high-level overview of the total number of commits and contributors in a specific period, for example, a week. It also provides an opportunity to track the number of open pull requests from all the contributors and the repositories.

        Using this graph, the manager can assess the activeness of a contributor. This gives the manager an idea of whether an employee is following the company’s development policy or not as well.

        tracking team activity in Bitbucket

        Based on the number of open pull requests, the manager in Innoface can actually plan time to review the code and merge them. This graph also gives an opportunity to process the pull requests from the contributors that are working on the high-priority projects.

        Analyzing code review practices

        Innoface management finds Resolution Time Report very helpful when it comes to tracking the frequency of processing the pull requests.

        analyze code review in Bitbcuket

        The manager uses this report in order to see the frequency with which the reviewers are processing the pull requests. Based on the data that this report provides, it’s easier to make a reasonable decision and to assign either more reviewers or increase the frequency of the reviewers, especially for the high-priority projects.

        Predicting pull requests resolution time

        Resolution Time Distribution report helps Innoface estimate resolution time for future pull requests to make more accurate release dates planning.

        pull request resolution time in Bitbucket

        The manager of a product team uses this report in addition to the Resolution Time Report in order to estimate the resolution time for future pull requests.

        Conclusion

        Awesome Graphs greatly enriches the Bitbucket user experience for Innoface. With its help, it becomes much easier to make decisions based on data and keep an eye on how efficient their development practices are.

        Read more case studies to see how our customers benefit from using Awesome Graphs for Bitbucket in their work:

        Start a free trial of Awesome Graphs

        Related posts

          9 Confluence Best Practices Your Users Should Know

          September 4, 2018
          #How To#Confluence Tutorial#Confluence#Document management
          10 min

          This guest blog was written by Balkis Khouni, an Atlassian certified consultant at Valiantys. Valiantys is a top Atlassian Platinum Solution Partner with proven expertise in DevOps, Agile and ITSM. They have rendered client-tailored services to over 4,000 companies, providing expert guidance on the deployment, adoption and support of Agile tools. To find out more, visit valiantys.com.

          Confluence is a content collaboration software that helps teams create, share and discuss their work. One of the tool’s characteristics is it’s simple and user friendly interface, yet also provides all the necessary features to organize and structure your company’s content on one single platform.

          Because of the tool’s simplicity, it is easy for users to add content without following good practices or guidelines, resulting in an unstructured wiki which can be counterproductive and hard to browse.

          It is highly recommended to define a list of guidelines for your users, so they know how they should structure content within Confluence. Below are some general best practices which will help optimize your company’s use of Confluence and make information sharing a breeze for everyone. While these tips are geared more towards day-to-day usages, for further information on how to make Confluence a fully-fledged Enterprise Content Management solution check out this guide from Atlassian.

          1. Identify the list of spaces you need to create

          Spaces are like folders, which allow you to organize your content by different categories.

          We recommend creating a space per Team (i.e. Finance) or by Project (i.e. Software development).

          2. Take the time to define your page structure

          In each space, it is important to set up a clear and organized page structure so content is grouped by subject and relevance. You can use page hierarchy to group several pages under one single parent page. For example:

          Page tree in Confluence

          When you have several levels of hierarchy, it might be useful to use the Children Display macro on parent pages. This way, users won’t have to expand the whole tree to find their page.

          3. Use page templates

          Confluence comes with a set of page templates, also called Blueprints, that allow you to:

          • Group pages by category of content (i.e. How To articles, Meeting Notes, etc.).
          • Have a standard layout and structure for those pages.
          • Save your employees’ time, as they aren’t recreating the wheel with each page.

          Confluence gives you the flexibility to set up your own templates and promote them to users, so they’ll have easy access to the pages. We recommend using the Create from Template macro, on your home page space, and also train users on the details for each available template.


          Quick Tip 

          You can also structure your content as training materials for onboarding or internal education.

          Click here to learn how!


          4. Increase productivity by using Confluence macros

          Confluence comes with a set of useful macros that provide a range of functionalities, which can make your pages more dynamic and customizable. This can enhance the look and feel of your pages while improving the user experience when browsing through content. A full list of macros bundled in Confluence can be found here. Alternatively, the Atlassian Marketplace offers a range of apps which can give you more choices for third party macros.

          Confluence macros

          5. Organize your attachments

          Confluence makes it easy to attach files to your pages, however keep in mind the following best practices:

          • Make sure to name your attachments in a way that is meaningful to make it easy for users to browse through them.
          • When uploading and updating version of an attachment, make sure to not rename it. By using the same name, the attachment is replaced rather than duplicated.
          • Optionally, you can organize your attachments in folders so all your files can be viewed in a structured manner. This can be achieved by using the Smart Attachments for Confluence app.

          6. Avoid redundant content

          Redundant content can be hard to avoid, especially if you need the same content in more than one place within your wiki. However, by duplicating content, it makes it difficult to keep everything updated without it becoming a tedious task.

          To avoid this scenario, you can use the Excerpt and Excerpt Include macros and embed sections of your pages into other pages.

          7. Label your content

          Labels are an easy way to group pages and attachments that are relevant to the same topic, making it easier for users to find what they need.

          A good rule of thumb is to make sure to choose labels that are relevant and meaningful. When labels are used consistently, you can make use of handy macros such as Content by Label.

          8. Grant permissions wisely

          It’s true that too many cooks spoil the broth. If you have too many administrators, chances are they’ll configure Confluence for their own needs rather than taking into consideration a global view, and in effect too many configurations in different directions can lead to performance issues. Make sure to give users the exact permissions they need to perform their work, and minimize the number of system and space administrators to no more than five people.

          9. Train Confluence users to adopt best practices

          Confluence is very easy to use, which can be a double-edged sword – everyone can use Confluence, but over time everyone can also contribute to creating a disorganized wiki if users are not mindful of their actions.

          It is crucial to invest in your Confluence users, and train them on why it is important they use the right page structure, add the right labels, use the right macros, etc. To nail down these basics, Valiantys offers a Confluence in Action User Training to get your entire team on the same page. Likewise it is also important Confluence administrators are trained, as they will be supporting users and making changes that affect the whole system. Valiantys’ Advanced Confluence Training gets your admins ready to manage their own instance in just one day.

          For more information on training your team to implement best practices on Confluence – or even the rest of the Atlassian suite – refer to Valiantys’ comprehensive trainings.

          Related posts