The path from conception to deployment is not easy at all. Project managers, initially, had a scarcity of resources when it came to having their own toolkit for testing their product. They used to depend on PowerPoint decks, spreadsheets and general tools for analyzing product performance. But this was not sufficient because these resources could not address their specific needs. This is why they needed more sophisticated tools, about which we will be discussing in detail, later in this article. These tools collaborate with each other or work independently to help deliver the best product. Product Management What is the aim of releasing a product? To meet client goals and to help in business realization, right? Through correct product management techniques, it is possible for a company to align themselves with client goals and aspirations. So what is Product Management? It is a paradigm function that aims to drive a new product into the market with clever strategies. It should be aligned with customer demands in order to achieve market clarity. Product Management may be a fancy term now, but companies were doing it from a long time ago. Even before this term was coined, companies used to assemble talented people to identify the market requirement or to address a pain point. Once proper brainstorming is done, a product will be released into the market after a few iterations and tweaks. A product strategy would be introduced whereby the company’s business goals would be realized. A product management strategy would address the following aspects:
1. JIRA – for AgileJIRA is the #1 Atlassian project management tool for agile teams. Make use of Portfolio for JIRA to avoid unexpected surprises and to chart a roadmap that would keep you in the know-how of what’s what. This makes it transparent. JIRA can support any type of Agile methodology be it Scrum, Kanban or any methodology of your choice. With JIRA, you can plan, issue track and release your software as planned and with the best results. JIRA comes in three packages:
Sprint Planning ToolsWith JIRA, developers can estimate stories, adjust the sprint scope, adjust velocity and do a lot more. Sprint, in product development, is the Scrum term for iteration. Scrum teams need to ensure that the project moves as planned and they do this by setting a time period for the completion of a particular part of the project. Through the Scrum approach, you assemble all the requirements of the project and then use them to define the project. JIRA offers some best sprint planning features like
version management- for tracking versions and progress,
easy backlog grooming- for re-prioritizing user stories, bugs, etc. and
story points- for maintaining accuracy in future sprints.
Daily Scrums or StandupsOnce the project starts, you plan the necessary sprints, then divide them once again with a set of requirements for each. To ensure there are regular inspections and project reviews, daily scrum meetings are held. JIRA helps you to review the previous day's work followed by setting targets on what needs to be completed on a particular day.
Tracking and Managing SprintsEach time a sprint is completed, you review it to check whether anything needs to be done to improve in the next sprint. Thus in each sprint, you have a functional part of the project that would be thoroughly tested before moving into the next. JIRA features like
Sprint permissions, Custom issue types, Workflows and Release hubgives you a clear idea of the progress of the work done in each sprint so that your team can effectively identify any bottlenecks in the tasks assigned.
Effective RetrospectivenessAt the end of sprints, you can hold a retrospect meeting to go through the product once again to gauge its performance. If necessary, changes and adaptations will be planned and made. This can be done with JIRA retrospective scrum reports like
Burndown chart, Velocity chart, Cumulative flow diagram, among a few. Other features of JIRA include:
Pricingfor JIRA is dependant on how many people you have on your team. It would be $10 per month for 10 users going up to $1500 for 2000 users.
2. Confluence - for DocumentationConfluence is a team collaboration software used for documentation, written in Java. Atlassian markets it; hence it works seamlessly with other Atlassian products like JIRA, Bamboo, FishEye, etc. Confluence offers commendable transparency and it's flexible too; so all the team members can work in an organized manner. Whether it’s creating, publishing or even accessing company information, the team can do all this work in a single platform, making it easy for projects to move without a hitch. With its team documentation feature, you can easily capture and store all the work done by your team, so everyone stays on the same page at any point of time. The main features of Confluence are:
It can Create Anything- With Confluence, you have the power to create anything be it meeting notes, project plans, product requirements. You can even add multimedia and dynamic content.
Instant Feedback in Context- The feedback on the work can be given on the work itself, complete with inline comments, eliminating the need for email or chat.
Integration in a Single place- There is space for everyone in the team, however big or small the project is. It helps in keeping the knowledge and information in one place, which can be searched and found at will.
Work while You Move– It helps you to work from anywhere; for example, when you are travelling, you get updates about your team’s work. Also teams spread across the globe will have no problems sharing their work with you. This is achieved through Confluence Cloud app.
Disaster Recovery– As disaster recovery strategy is a key benefit of Confluence, it plays an important role in business continuity. The entire file system will be fully replicated.
Efficient Document Management– Confluence makes it easier to make documents, centralise all of the contents and plan for iterations
Can be Connected with JIRA– This helps in better transparency, thereby aiding in connection with customers. Besides these features, Confluence can be easily synchronised between desktop and mobile - you can easily navigate your saved data from desktop to your smartphone and vice-versa without the fear of losing any of your work data.
Pricingfor Confluence will depend on whether your team is hosted in the cloud or on your server (self-hosted). For cloud teams – Free for 7 days; rate will be $10-$100 per month. For self-hosted teams – Free for 30 days; rate will be $10-$200,000 (size of the team)
3. Crucible - for Code ReviewsCrucible is a web-based collaborative code review tool that helps you monitor and detect major defects and improve codes. It is lightweight - meaning it has less syntax and can be easily implemented by distributed teams to get quick code reviews, complete with inline comments and threaded conversations. With Crucible, you can be assured of high quality codes because flaws are immediately detected. It gives you reports and reviews of the code status, enabling you to have an idea of the changes to be made. Take a look at the main features:
Code Review Tool- Reviewing the code with this tool would help catch some major errors in the code structure. This would trigger discussion among the team members at the end of which changes could be made.
Clear Inline Discussions- You can get right into the code with inline comments, mentions and threaded discussions if you want to communicate with your team members.
Well-Organized Activity Streams- With the help of the Activity streams feature, you know what is happening in your project at any given point of time, complete with comments and all.
Simple Audit and Compliance - You can use Crucible to trace the history of a particular code review which you accessed or skipped earlier.
Integration with Jira, Github and Bitbucket- With the integration with JIRA, Github and Bitbucket, you can handle and resolve code issues in a single time-saving interface. This allows you to improve your development workflow through email notifications, side-by-side diffs, smart commits - both pre and post commits, Source and Review Tabs. You can use Crucible’s native repository access and connect to Git repository, and a Git hosted in Bitbucket Server makes it much easier. To interact with Git repository, you need to execute the Git command separately.
PricingSmall teams can make a one-time payment for unto 5 users. Free usage for 30 days. For larger teams, you can choose to make the one-time payment for $1000 for up to 10 users. Crucible is also available with a 30-day free usage.
4. FishEye – for Version ControlFishEye is an Atlassian owned advanced revision control browser and search engine. It allows you to compare, visualize, track and search for code changes - all in a single platform. The main advantage of FishEye is that it gives a visualized form of all the code changes that’s made in the repository. Used mainly for open source projects, the term ‘revision control’ in FishEye also means version control. When large amounts of information are present, and you need to make changes to a few of them, then you can make the revisions and each change would be given a number. Some of its superb features include:
Diff Tool– FishEye comes with a Diff Tool that gives you a side by side comparison and understanding of the code changes
Perfect Activity streams– Real time activity streams in FishEye gives you an idea of what’s happening in your project. Gives overview of commits, JIRA software issues and Crucible review activities.
Accurate Code Search– With FishEye, you can make code searches easy with just file names, usernames, wild cards and so on.
Tracking Code Activity across any SCM- FishEye makes it easier for you to browse, index and search from different source code management systems like SVN, Git, Mercurial, CVS and Perforce.
Integrates with Jira, Bitbucket- Once your FishEye is set up, it allows you to configure JIRA automatically. The integration would give you a quick and guided path to software development process. The integration with Bitbucket, and adding the repositories are quick and can be done with a single click. This makes indexing, browsing and searching easy.
Usage alongside Crucible- Using Subversion, Git, Mercurial, CVS or Perforce would help you to integrate Crucible and FishEye for extracting information and managing code reviews.
PricingWith a one time payment of $10, up to 5 users can use FishEye. This is more suitable for small teams. For larger teams, a one-time payment of $1000 would be sufficient for unlimited users.
5. Bitbucket – for Collaborative Revision ControlBitbucket acts as Git solution for professional teams. Its main functions are coding, managing and collaborating with the team. And it doesn’t merely collaborate; it can do this at a large scale. Written in Python using Django, Bitbucket enhances the functions of revision control systems like Git and Mercurial. Here are some of its main features:
Effective Code Collaboration– Bitbucket enables code collaboration using using pull requests. This helps in more efficient code reviews.
Massive Scaling– Integrated with Bitbucket Data Center for a fast performance
Flexible Deployment Models– Flexibility is one of the greatest features of Bitbucket, irrespective of the size of the team or its location. You can manage in the cloud, Bitbucket Server & Data Center.
Branch Permissions–Helps in eliminating errors by controlling the actions. You need to get granular permission at each level.
Inline discussions– The team can hold discussions right in the source code.
Diff Views and 3
Party Integrations- Integrates beautifully with Bamboo for continuous integration, HipChat for team chat and with other systems through Bitbucket web hooks.
Integrates with other Atlassian Products– Bitbucket works with other Atlassian products to help build high quality, performing software.
Bitbucket PipelinesBitbucket Pipelines helps you to build, test and deploy from Bitbucket. The good news is that you don’t need to integrate this tool specially to build accounts or agents. You can easily connect the repository with your Continuous Integration tool. Additionally it makes the entire development workflow seamless, right from code to the deployment stage. All you need to do is select the repository, activate the pipelines and that’s it. Add Bitbucket-pipelines.yml file to the root of your repository to activate Bitbucket Pipelines. Now you can see the build statuses whenever and wherever you need it.
Git LFSGit Large File Storage by Bitbucket is actually a Git extension and developed by Atlassian, that lets you handle large files with ease. The download is done during the checkout and not during cloning or fetching. Git LFS does the downloading differently by replacing the large files with tiny pointer files and stores the files in a local Git LFS cache. These are then handled automatically during normal usage. When new commits are pushed, the files from the local server are transferred to the remote Git LFS store attached with your Git repository. And when you checkout, commits with Git LFS pointers would either be replaced with files from your local Git LFS cache or taken from a remote store. The advantage with Git LFS is that you don’t need to change the Git workflow at checkouts.
Bitbucket Data CenterBitBucket Data Center is the upgraded version of Bitbucket server whenever required, Atlassian’s Bitbucket being the Git code management solution for enterprise teams. It is extremely useful as a non-premises Git repository management solution for larger enterprises, providing high availability and infrastructure flexibility. Bitbucket Data Center uses a cluster of Bitbucket Server nodes for the following functions: Clustering - where you can run your Bitbucket instance on a cluster of multiple nodes, offering scalability with no downtime, high performance and availability. Smart Mirroring - providing local mirror nodes in different geographical locations enable quick and trouble-free clones and fetches.
6. Bamboo – for Continuous IntegrationBamboo allows you to focus on coding while it does all the Continuous Integration faithfully. It performs a number of functions like creating multi-stage build plans, setting triggers for builds and assigning agents for all crucial builds and deployments. It does all the testing and deployment in a single workflow. You can do Continuous Integration testing automatically and quickly with Bamboo. Catching bugs with Bamboo is much easier because you can make use of both parallel automated tests and agile development. One of the clear-cut feature of Bamboo is that it integrates smoothly with a host of softwares. It connects with repositories like Git, Subversion, Perforce, etc., supports build tools like Ant and Maven, testing tools like Selenium, PHPUnit and JUnit besides importing data from Jenkins. Here’s a snapshot of its other features:
Rich Tech Stack- Use Bamboo with any language and technology, especially with AWS CodeDeploy, Amazon S3 and Docker. You have the freedom to make free add-ons, choose from a growing variety of available tasks for both build and deployment.
Excellent for Deployment- Bamboo makes it very easy for deployment projects and environments.
Dedicated Agents- This helps in running hot fixes and critical builds. You no longer have to wait in the queue for fixing the critical bugs even with free build agents.
Wide Visibility- For the release managers, there is a great visibility on what’s going live. The Ops teams can expect what will happen during deployment and what they will be responsible for.
Integration with other Atlassian Products- When Bamboo integrates with Bitbucket, FishEye, HipChat and JIRA, there is amazing traceability, right from the development stage to the final delivery stage. Additionally, visibility is enabled for pull requests, deployments, builds and more.
Running Parallel Tests- Run batches of tests in parallel with more than 100 remote test builds, and gives feedback on a timely basis.
Proper Quarantine- Distinguish between the red and green builds, while keeping the green builds with a single click quarantine.
Effective Branch Detection- No suffering of code quality here. New branches like Mercurial, and SVN repos are detected, while CI theme automatically there.
PricingFor smaller teams, the pay is at $10, up to 10 jobs. For larger team, the pay is $800, for unlimited jobs.
ConclusionThe tools that we have mentioned above prove that project management tools are a varied category, and each tool contains a cocktail of responsibilities that can be mixed and matched. You can adjust the features to suit user requirements, but it is also important to track their reactions first. With these Atlassian products, you can easily take your product development to the next level. The best thing about these tools is that they integrate with one another to deliver the best results, enabling your team to deliver the best through agile means. Interested in kickstarting your new product development with Atlassian team collaboration tools? We will help you. Contact Us Today!
Subscribe to our newsletter and know all that’s happening at Cabot.
YOU WILL BE HEARING FROM US SOON!
We look forward to hearing from you!
YOU WILL BE HEARING FROM US SOON!