2 min read

Test Driven Development

By Lauren Schroeder on Apr 28, 2021 11:15:00 AM

Blogpost-display-image_Test Driven DevelopmentWhen we're in the process of creating a product, we want to see the end result. We have a vision of what the product will look like and how we want to get there, so it's tempting to try to get the product running as quickly as possible. However, if and when the product breaks or needs to be updated, we are going to be responsible for fixing it. With that in mind, we look toward Test Driven Development (TDD)

Nobody likes folding laundry. It takes time, and not everyone appreciates the results (at least not initially). The next morning is a different story: When you wake up to a crisp stack of folded shirts, choosing an outfit is easy - there's no rummaging through a laundry bin and you know exactly what's ready to wear. Sometimes, an initial time investment such as folding laundry, can help us out in the future.

Testing the Feature

We could test manually, going through our list of features and testing each feature to make sure the product is operating as intended. Or, we might write automated tests once the product is finished. But like rummaging through a laundry bin, working through this retroactively can be complicated and we may miss important information.

Many developers use TDD to prevent dealing with this "laundry". Instead of writing tests during the QA phase of development, developers write automated tests before anything else. Imagine a developer adding a new feature to software that allows the user to change the color of the background. The developer first writes an automated test to check whether the background color is changed once a button is clicked. The test may initially fail. They would then add the functional code and use the automated test to make sure the feature works.

Why would a developer want to spend extra time writing tests before building a product?

First of all, TDD keeps development simple and goal-focused. Features are added only when they can pass a specific test. This means that the developer has to make sure that each feature is necessary and the objective of that feature is clear. With no objective, it's impossible to write a test to pass your objective.

The TDD time investment leads to time savings in the future. Although it takes more time to include automated tests in the initial development of a product, there is potential for time savings in the future. When a product breaks, it's clear which part of the code is causing the failure. This means that QA may go more smoothly as bugs or product upgrades arise.

Test Driven Development-1Conventional development vs. Test Driven Development. Using TDD requires an initial time investment but can lead to time savings long-term.

Of course, TDD processes aren't the best for every team. When there are too many possible test cases (often seen in GUI development) it can become impossible to write tests for every functional situation. Like any set of processes a team uses, think about what makes sense for your situation. Does the product have finite requirements? Has QA testing used eaten away hours of time due to buried bugs? Making an early time investment can keep things orderly. Even if your sock drawer is destined to be a mess, think about how you're building your products.

Want to learn more about testing? Check out Could Testing Be the Missing Link for Effective Agile Transformation.

Topics: blog best-practices plan testing development agile
8 min read

4 Phases of Agile DevOps | Atlassian

By Praecipio Consulting on Aug 15, 2016 11:00:00 AM

As Development and IT Ops teams look to be more efficient, decreasing their time to market and increasing product support, DevOps has become the predominant industry solution. There are many resources that paint a picture of the ideal processes for Development and Operations working harmoniously together- but how do we actual get there? Where should we start? 

We need to begin with the end in mind. Our end goal is to deliver customers the software they need as fast as possible. The software industry is faster and more dynamic than the businesses of physical products. We need to get our customers features so they can give us crucial feedback while beating our competitors to market. The faster release development goes from concept to code, the quicker we can make customer happy. DevOps is a broad term with a variety of meanings, but at the end of the day, it seeks to increase the collaboration and automation between Development and Operations so we can get more frequent and higher quality releases into the hands of our customers.

When it comes to collaboration and automation, a focus on process and the use of the Atlassian suite are the best way to get there.

 The infinite loop of developing and supporting products that customers need and want with DevOps and the Atlassian Suite.

Image source: Atlassian 

Selling DevOps

The pain of hectic firefighting and troubleshooting make the need for DevOps obvious on the frontline, but getting alignment and investment at the organization level can be pretty difficult. Successful implementation is going to require buy-in and support from a variety of stakeholders and many levels. Before we can get our hands dirty, we need to convince everybody to spend the time and money to get these processes and tools in place.

Here are three ways to get the ball rolling:

One for the Book Club: Phoenix Project

Everybody has those business books that revolutionize the way they manage their work and companies. The Phoenix Project by Eugene Kim narratively addresses and exposes the gaps in processes between teams and points to a DevOps prescription to unblock cross-team work. We highly suggest recommending it to your teams, as it's a great way to get everybody on the same page and really see the value of DevOps.

Build a Business Case

At the end of the day, businesses exist to make money. To invest time and effort, we need to calculate the business return. The 2016 DevOps report from Puppet Labs does a brilliant job showing the financial reasons to adopt this shift.

The ROI of reducing excess work with DevOps according to 2016 DevOps report from Puppet Labs

Image Source: Puppet Labs

Phase 1: Go Agile

To get the real benefits of DevOps, it requires a shift in mentality and how we manage work through our teams. As we break down our requirements into smaller individual user stories, we can flow the work through the features through the process faster. By having the structure, ceremonies and processes in place to accommodate smaller pieces of work, we can get our customers the features they need and incorporate their feedback to iterate the next, improved release faster.

Here are some helpful ideas to help your teams go more Agile: 

  • Get Up, Stand Up | Simply doing stand-ups doesn't mean you're all the way agile, but it's a great way to get our teams into the mindset. Keep them short and reduce the headaches of status updates and emails. Fill everybody in on what you did yesterday, what you're doing today, and what pesky blockers are in your way. It's facilitates more agile and responsive team collaboration and support (the heart of DevOps).
  • Iterate Everything! | Speed up that Agile transformation, breaking down your waterfall projects into smaller sprints so you can always reprioritize and adjust as needed. Start with your software teams and spread out to your IT Ops projects and even marketing projects. Start in your own department: find the planning spreadsheets with those idealistic due dates, set up a backlog, and start sprinting!
  • Agile Boards | Once you're planning and executing in sprints, track and visualize it on a Jira Software board. Avoid those dreadful status meetings and send out the link to the board to keep everybody informed. Also, throw some wallboards up around the office so everybody can see your team killin' it. 

You'll know you're a lean, mean, agile machine when your software teams are cranking out stories in a steady cadence of sprints. Over time you'll see that velocity stabilize - then you can accelerate!

Phase 2: Get with Gitflow 

Git and Gitflow is a great way to help our dev teams increase velocity. As we're working with smaller stories, we need to be able to collaborate effectively with on our code base so we're not stepping all over each other. Version control systems of the past aren't going to be able to keep up with our blazing fast development teams. Bitbucket and the underlying technology of git are going to let our teams build user stories and merge them into the code base without wasting time messing with annoying versioning issues and costly code conflicts. 

  • Start with the Basics | Start by learning (allthethings) about how to effectively manage your branches and build in code quality with Atlassian's Git Tutorials and the Git Getting Started guides. Share them with your team so everybody's on the same page and knows the difference between a commit and a pull request.

  • Move to Git | If you haven't made the cutover to Git quite yet, get your team and managers onboard by sharing the benefits and how it will help ship more code. Once folks are convinced, learn why Bitbucket is the Git solution for professional teams and helps with pull requests, branching strategies, permissions and scalability. When it's time to actually move all that code over, see how we helped Splunk get git and 4 times the number code reviews completed. 
  • Start Branching | With the tools in place, it's time to start branching! Learn more about some common workflows to better handle branches here. Utilize those pull requests to build in code quality as you go. Eventually your Dev team will be humming with full Gitflow and your Ops teams will be in love with the clearly designated branches.

  • Automate, Mate | The marvelous integration between Bitbucket and Jira Software lets us automatically update the Jira issues based on what's going on in Bitbucket. Developers don't need to switch context anymore to keep the ticket up to date, and the whole team gets an accurate idea of what's actually going on. Check out our Automation Webinar to learn more about the powerful workflow triggers that make this possible.


The Gitflow branching strategy shown above utilizes different branches for specific roles like hotfixes and releases to help manage larger and more complex projects. 

 Image Source: Atlassian

Phase 3: CI/ CD

The next phase is how we define the crucial handoff between Dev and Ops. When our units of work and code changes are smaller, we're going to need to deploy more often to get those features to our customers. Before we ship it to the ops team and production, we need to ensure quality as our individual features come together. This is where good Continuous Integration/ Continuous Deployment practices along with Atlassian's Bamboo are vital to successfully shipping our product. Catching bugs and issues before they go to production is going to help both the Dev and Ops teams sleep better at night.

  • Learn about Bamboo | For on-prem Atlassian users, Atlassian's Bamboo is the CI/CD solution that allows professional teams to build their CI/CD pipeline. You may be using Jenkins or other open source teams, however the deep integration points and improved build management make it the right choice for professional teams.
  • Integrate with Jira | Once you have Bamboo up and running, leverage the integration between Bamboo and Jira Software.
  • Bitbucket Pipelines | If you're an Atlassian cloud user, Bitbucket Pipelines is a new, powerful solution in Beta that lets developers build, test and deploy directly from Bitbucket. Developers have the power as they can define the environment and tests for their specific branch with YAML file style configuration.
  • Dockerize Everything! | Docker and containerization is the latest craze sweeping the IT world as teams look to deploy applications to any environment faster and easier. Check out our Docker +Atlassian webinar to learn more about how. As partners with Docker, we love to helping teams harness this cutting-edge technology.
  • Automate Testing | Automating testing with tools like Charlotte, QA Symphony, and Zephyr (which integrate with Bamboo and Jira) gives your development team an even more agile edge. Get efficent, high-fidelity testing to expedite the finding and squashing of bugs to ensure your next iteration is the best version.

Phase 4: Harmonize with Support

Once the story is shipped, the process does not end. Now it's time to keep the product working and collect that vital feedback we need.

  • Check out our webinar, DevOps with the Atlassian Suite, for a full picture of how development and operations are going to work in harmony.
  • Set up a product feedback service desk in Jira to really hear your customers and integrate directly with development teams.
  • Learn how to set up your Service Desk teams for success with our ITSM webinar.


By implementing the right DevOps tools and processes, you'll see the faster shipping of higher quality and better supported releases. As your Development and Ops teams continue to execute these lock-step processes, you get more agile by good practice. Take the steps to start implementing DevOps today by contacting us to get up and sprinting.

Topics: jira atlassian blog scaled-agile automation bitbucket bugs continuous-delivery bamboo branching devops docker distributed-version-control-system process-consulting qa-symphony sdlc selenium software sprint testing version-control-system workflows tracking continuous-integration cloud development integration it operations release-management marketplace-apps
3 min read

Three Reasons Why Developers Love Docker

By Praecipio Consulting on May 6, 2016 11:00:00 AM

A smooth running production environment is a beautiful thing. But how do we get there? And how do we ensure that all of our production, staging/test, and development environments stay in sync in order to get there? Today, it seems like everyone in software development is talking about Docker and containers. In fact, according to the 2016 State of the Cloud Survey by RightScale, Docker adoption doubled from 13% to 27% in just one year. Furthermore, 35% of the organizations surveyed reported that they have plans to adopt it soon. 

Why has Docker adoption skyrocketed and how can those using Bamboo for continuous deployment reap the benefits? Check out three reasons why developers love Docker, and how it can provide value for your dev team. 

But first... 

What are Containers?

A Docker container packages software in a complete filesystem with everything it needs to run – such as code, runtime, system tools, system libraries – guaranteeing that it'll always run the same on any environment. Docker is all about creating consistency and encouraging collaboration. It revolutionizes how we share our environments the same way Git has changed code collaboration. At its core, Docker is about utilizing the least amount of operating system resources and dependencies needed to run an application. This focus on maximizing efficiency leads to a painless, more collaborative, and seamlessly integrated environment to test and deploy applications. 

Sourcewww.docker.com

1. Test without surprises

A crucial part of the development process is testing, whether on a local machine or in a virtual dev environment. With containers, every environment is exactly the same so changes and unexpected dependencies won't interfere with testing – saving developers time and energy from tweaking problematic environments and instances. 

Running containers on your local machine using Docker Quickstart Terminal lets you test in a consistent environment.  

2. Collaborate with consistency

Unexpected dependencies are already a hassle for one developer and becomes an even bigger headache when other devs enter the picture. Unknowns in an environment are amplified with each new team member – who knows what's on their machine or which version of Java they're running? With Docker, consistency facilitates collaboration. By starting with a known configuration in a common container, devs are always on the same page about which version to use; it's right there in the container.

Share your Docker Images with a registry like Docker Hub.

Source: https://hub.docker.com/_/hello-world/

3. Integrate with Atlassian 

Atlassian, the leader in enterprise software for collaboration and issue tracking, is the perfect complement to Docker. By pairing Docker's consistency with Atlassian's integration and automation, collaboration between development and IT ops becomes seamless. Using the new Docker Hub 2.0 with Atlassian's Bamboo, source code can be automatically built and deployed to an identical development, test, or even production environment. No more requesting environments from the IT ops teams; triggers will automatically fire from your approved pull request in Bitbucket to spin up a lightweight container in your QA environment almost instantly. Without the excess back and forth, you can go from source code to a running application in minutes. 

The Docker Task in Atlassian's Bamboo let's you run, build and deploy images and containers with ease.

Docker is picking up a lot of traction today and rightly so. Docker containers provide consistency in the turbulent world of software development environments. They allow dev and operations teams to get customers the applications they need now – all while providing a consistent environment that makes working together a whole lot easier. 

To learn more about how Docker and Atlassian can help your dev team work faster and smarter, contact Praecipio Consulting.

About Brendan Kelly

Brendan is a Consultant & Solutions Specialist at Praecipio Consulting where he enables the sales team through technical discovery, training and product demos. When Brendan isn't delivering best-in-class business technology solutions, he can be found in the Austin Green Belt hiking and bouldering. 

Topics: atlassian blog automation continuous-delivery bamboo docker optimization process standardize testing continuous-integration deployment development environment integration cicd
4 min read

Jira 5's Social Perks

By Praecipio Consulting on Mar 2, 2012 11:00:00 AM

Jira 5 is a brilliant platform for collaboration, connecting the people, activity and applications you work with every day.

Software development involves your entire organization, and good software becomes great when you bring everyone into your development process. Atlassian Jira 5′s here, connecting the dots between the development process and the rest of your business.

Your Platform for Collaboration

Software’s the center of much of our world today: it’s in your car, on the phone in your pocket, and it shapes how you work with teams, projects, and organizations.

Jira sits at the center of your software development, from initial feature planning and assigning work, to tracking development work and testing, to managing project status and the final release. Jira 5 takes collaboration to new levels by connecting people, activity, and applications around software development.

People & Teams

Jira 5 has two powerful new ways to bring people into the conversation: ‘@mentions’ and sharing.

While Jira’s email notifications are great for keeping everyone up-to-date with the issues they’re working on, sometimes you need to bring others into the conversation who might not be actively participating in an issue already.

With Jira 5, simply @mention any user in a comment or description and they’ll receive an email indicating they have been mentioned. Autocomplete lets you select usernames on the fly and Jira makes it easy to track who is involved in the comment stream.

The Share button lets you quickly send out a broadcast-style ‘FYI’ to people and teams you are working with.

Similar to sharing in Confluence 4, you can now share issues and saved searches by simply adding a user’s name or email address and typing a quick note with some details.

Activity & Applications

With new improvements to activity streams and issue linking, Jira 5 is the central place to stay up-to-date with what’s happening on your projects.

Remote issue links allow you to connect Jira issues to any website URL or application. This is great for connecting Jira issues to pages in Confluence or issues in other instances of Jira. External applications can also link to Jira issues directly to any Jira issue using the new Jira REST API.

Activity streams now show remote activity as well. In addition to real-time updates from Jira, all other Atlassian products connected via Application Links will automatically show up in your feeds. This includes changes to Confluence pages, Bamboo build status, and source activity from FishEye, and more.

Remote applications and plugins can also add events their own to Jira activity streams.

Connecting the Dots

Atlassian tools aren’t the only applications you use alongside Jira… so Atlassian’s excited to share some killer integrations to connect the tools and teams you work with every day. Here are a few examples of how development teams are connecting with the teams around them.

Development to QA

QA teams spend their time writing tests, planning execution cycles, running manual tests, kicking off automation scripts, and providing status updates in a test management tool like Zephyr. Developers spend time in Jira, managing and tracking their own daily work, or planning work with their team.

Jira 5 Activity Streams bridge the gap between tools like these, providing real-time updates between Zephyr and Jira whenever major activity happens, such as:

  • beginning testing on a particular project or version/sprint/iteration
  • a particular test execution cycle starting
  • a brand new bug being filed or modified

Developers and anyone working in Jira get a running feed on testing activities in Zephyr, as they occur, without having to reach out to those team members to chase up status updates.

Development to Product Management

Confluence is a great tool for product managers to work on unstructured content, like requirements or specification docs. These are often directly related to one or more issues in Jira.

With Jira 5, it is easy to create a two-way link between Jira issues and Confluence pages. Simply paste the URL to an issue into any Confluence page and the Jira issue will automatically be updated with a link that page.

Development to Customer Support

It doesn’t stop with Confluence. Remote issue links in Jira 5 connects Jira issues to other items the teams you work with use:

  • a document in Box
  • a customer record from Salesforce
  • a support ticket in Zendesk
  • a discussion topic from Get Satisfaction
  • and more..

Your Platform for Integration

Jira 5 makes it easier for everyone to consume and develop plugins with two huge announcements around APIs: a stable Java API and a brand new REST API.

The stable Java API means every Jira customer can rest assured that all Jira 5.0 compatible plugins will be forwards compatible with Jira 5.x releases. Atlassian wants the best possible experience for all Jira users, so Atlassian is committed to investing in this set of stable APIs to support developers integrating with our tools. You won’t need to wait on a plugin when the next Jira 5.x release comes out – you can upgrade right away, knowing all plugins built using this new stable API will be forwards compatible!

The Jira 5 REST API gives you a new way to work with issues remotely – including the ability to search, create and link issues, and add remote events into the Jira activity stream.

Get Connected with Jira 5

Jira 5 integrates with the tools developers and other teams use to help software development stay connected to the rest of the organization. Sharing and mentions make it easy to bring others into the conversation. Remote issue links keep dynamic, relevant information in a central place. Activity streams keep you updated on what’s happening in and outside of Jira in real-time.

Jira 5 is the center of software development, connecting people, activity and applications you work with every day, helping you make great software.

Topics: jira atlassian blog facebook management software sprint stream twitter zephyr collaboration development organization atlassian-products
8 min read

Jira: Best 11 of 2011

By Praecipio Consulting on Dec 30, 2011 11:00:00 AM

2011 was an epic year for the Jira Family including two massive releases, the launch of a new product – Atlassian Bonfire – and the introduction of Atlassian OnDemand just to name a few things. Atlassian’s Ken Olofsen had a tough time whittling this list down to just 11 things, but “did his best” to use a “traditional 4-4-2 formation“ (see primer on jersey number relevance) to highlight his “Jira Best XI” for 2011. So, here’s Ken:

The Keeper

For anyone who’s played the game, you’ll know that goalkeepers are a special breed and sometimes a bit looney – no offense to Michael Knighten or any other ‘keeps out there.

Keepers are typically the older veteran who is wildly popular with both the team and the fans, and for our team this is no exception:

No. 1 – User Timezones

JRA-9 was not only the oldest, but also the most voted feature (454 votes), we added to Jira in 2011. And we didn’t just add timezones support, we took timezones to the next level by making it clear for distributed teams to see when other teammates are either sleeping or on the job.

The Defense

A solid foundation is the key for any winning team, so it was important for the Jira team to bolster the back line and build a platform for success:

No. 3 – New Installers / Upgraders

At the heart of the back four we have the new installers for Windows and Linux. Not only did we add simple way for administrators to setup and configure Jira, we inculded an unattended installer and automated upgrader for pain-free Jira deployments going forward. On top of that, we even provided a self-updating plugin manager, database config tools and enhanced importers.

 

 

The other anchor in defense, Application Links are the glue holding all your Atlassian tools together providing aggregated activity streams and key integration capabilities.

For example, connecting Jira to Confluence allows quick issue creation and linking of Jira issues from Confluence. In fact, with the recent release of Confluence 4.1 Jira issue links will instantly autoconvert in the Confluence editor:

 

No. 2 – Admin Overhaul

In addition to adding LDAP & Active Directory support, centralized user management, and a new visual workflow designer; we revamped the Jira Administration interface to make it easier than ever to manager your instance. A new project-centric administration screen makes it simple to see how each project is setup, so you can make changes quickly.

 

No. 4 – Jira on the Bookshelves

Four new books hit the shelves this year providing an excellent array of resources for Jira admins and plugin developers:

 

          

The Midfield

As the engine room of the team, the midfield is where the heavy lifting happens. We added a number of key features and enhancements to make Jira even more powerful than ever.

No. 6 – Visual Workflow Designer

Jira’s versatility is rooted in it’s powerful workflow. That’s why I was personally very excited to see the acquisition and integration of the Visual Workflow Designer making it easier than every to create and modify workflows on the fly:

 

 

 

No. 7 – Activity Streams

No one can quite “bend it like Beckham”, but Jira Activity Streams are incredibly flexible and configurable.

Each team member can dial in their personal activity streams to keep tabs on the specific systems, people and activities that are important to them. They can also vote, watch and comment directly from their dashboard, or drop custom streams into their favorite RSS reader.

No. 8 – JQL Search Change History

Jira Query Language set the gold standard for advance search within issue trackers. In 2011, JQL blossomed into the prototypical “two-way player” by adding historical search capabilities. Use the “WAS” operator on everything from status to assignee and uncover changes made “BY” certain people anytime in the past. Great for building killer dashboards, ad hoc reporting or just sleuthing around Jira.

No. 10 –  Issue Creators

The spark at the center of midfield is the “creator” who gets it all going. Jira has no shortage of ways to create issues – the web, your browseryour IDEemailremote APIs, applications like Confluence, and more. In 2011, we introduced Jira Mobile Connect for collecting user feedback and crash reports from your mobile apps and the Jira Issue Collector for creating issues from your website:

 

And just wait, 2012 promises even more!

The Forwards

Leading the attack, the forward line is always part of the action and usually the ones making the real difference. In our team, the strikers come from our popular add-ons, GreenHopper and Bonfire:

No. 11 – Rapid Board

After spending a few months in the “GreenHopper Labs”, we finally unveiled the Rapid Board. Based completely on JQL, Rapid Views introduce a new way for agile teams to view issues in Jira and work through their daily tasks.

 

No. 9 – Session-Based Testing

Atlassian Bonfire is the newest member of the team and is already blazing a trail for exploratory testing. We all rely heavily on automated testing, but with the growing emphasis on usability and user experience, many software teams are spending more time manually testing applications.

Bonfire’s session-based testing evolved out of our own need for better tool for managing our agile testing efforts.

 

Off the bench

 

Every strong team needs the support of a deep bench, and ours knows no limits:

No. 12 – The Jira Ecosystem

This year the Jira ecosystem exploded, bringing the list of Jira add-ons – plugins, applications and integrations – to over 400!

No. 14 – Slick New Emails

Email notifications got a nice refresher ensuring we find out exactly what happens, as it happens, on any device.

2012 and beyond

The Jira team has been working very hard to make all of our customers, new and old, as happy and successful as possible. And with Jira 5 on the horizon, 2012 promises to be even more exciting for the Jira Family.

On behalf of the entire Jira Team, I’d like to thank you for being part of our success. Happy New Year!!

 

PS. Don’t forget to check out the Confluence Starting XI for 2011. While no match for this Jira team, it’s quite impressive as well.. 

Topics: jira atlassian blog scaled-agile twitter cloud development greenhopper email-notifications marketplace-apps
5 min read

Bamboo 3.4 Holiday Release - Git Submodules and EC2 Windows Support

By Praecipio Consulting on Dec 15, 2011 11:00:00 AM

Bamboo 3.4s ready for download and ready to spread a little joy for the holidays. This release provides some gifts for Atlassian’s Git users, and will bring joy to those expanding their continuous integration process into the cloud.

What’s New in Bamboo?

Improved Git Support & Compatibility

Git users can get more out of Bamboo during their holiday break. Satisfying many votes from our Git users, Bamboo’s integration with Git’s now compatible with Git submodules. Git submodules are simply a reference to another repository at a particular snapshot in time.

  • Ruby, Python, and Javascript software projects often have dependencies on third-party libraries
  • Java developers need specific versions of a library in java that have not been released

The new support for Git submodules allows Atlassian users to structure your projects the way you want, and makes it easy to build multi-module projects. The full capabilities of your Git client are now at your disposal for Git-based development. Simple and powerful, just like Git!

Note: Building with Git submodules requires that you have a native Git client and add it as an agent capability in Bamboo. If you’ve not configured your agent capabilities to use your native Git client Bamboo will use the embedded Git client (which doesn’t support submodules).

 

Curious about Git submodules and how you can use them? Learn about Git submodules here.

Share Repositories

The holidays are all about sharing, so Atlassian thought repositories in Bamboo should join the fun. In Atlassian’s previous Bamboo release, Atlassian introduced the ability to monitor and check out code from multiple repositories. Multiple repositories in Bamboo are great for both small projects that wish to build and include externally developed open source software as part of their project, and large projects that consist of multiple modules located in different repositories. Whether you are working on a small or large project, you may be using the same repositories across multiple build plans in Bamboo. Following the DRY (Don’t Repeat Yourself) principle, you can now share your repositories across these plans. Bulk manage repositories across multiple plans with a single configuration change. For admins, that means you don’t have to edit each plan/job to change a repository. All you have to do is go into the Shared Source Repositories, and make your changes there.

  • Changing working branches: post release, you may want to change the working branch. Now you don’t have to go into each job and update the Source URL manually.
  • Changing servers: if you are moving servers and changing base URLs, simply change the base URL in one place.
  • Changing passwords: admins update SCM passwords (every month) as per company policy; now you don’t have to edit each plan/job to reflect those changes.

A huge time saver for those trying to keep repositories in sync across multiple plans.

Define a shared repository that can be used globally. From there, you can share the configuration with as many plans as you want.

After you update your shared repository configuration, the changes will be picked up by all Plans that use that repository. Share away!

Grow in the Cloud – Elastic Agents with Windows Support

Give your team the ultimate gift, more build power. For those of you taking advantage of elastic agents in the Amazon EC2 cloud, Atlassian now has Windows and .NET support.

Growing capacity
Considering growing your Windows instances without having to install Windows? It all comes within an Amazon EC2 image. After the image is spun up, you can be easily connect to your instance with a Windows Remote Desktop application from any operating system.

Windows application testing
Windows instances from Amazon are great for any Windows installer testing. Like a typical VMware image, an EC2 image can easily be discarded after use, which is important because some Windows applications leave too much left over in the registry. If you need to test Internet Explorer for your web front end tests or Microsoft SQL Server for your database backend, it’s all possible on Amazon EC2.

Saving installed applications
Just like Linux AMIs, you can install any packages, add software, and make system configurations. Easily save these changes to your new AMI image, which can be added to your Bamboo EC2 Image configuration.

Windows EC2 with Amazon and Bamboo allows for elastic growth to meet your demands.  Don’t have enough VMWare hardware to go around? Expand your build system into the Amazon cloud, along with Bamboo’s elastic agents.

Want to get going on installing elastic agents on Windows/.NET? Check out a how-to blog on elastic agents and Windows.

“Easy on the Eyes” Emails

There’s alot of “bling” flashing around, so Atlassian decided to make emails more “blingy”. There are many options to receive builds notifications in Bamboo – RSS, instant messenger, IDE pop-up, through Jira and email (the most popular). The goal of all these notifications is to digest the information you need quickly, so you can resolve any issues. The new email template makes it a whole lot easier to find important information about a build at a glance. Identify which test(s) failed, view code changes, and jump to the context of changes directly from the email. Not to mention, it looks and feels like the Bamboo UI.

 

Agent Security

Sensitive information’s now even more secure in Bamboo. Verify that remote agents are allowed to connect to the Bamboo server, and prevent unknown agents from connecting to the server. When Agent Security’s enabled, an administrator must manually approve agents before they can communicate with the server in any way.

There’s more…

  • Improved dashboard performance: your dashboard should feel a little snappier with improved caching
  • New Bamboo logo: You may have seen the new Bamboo logo on our website. It’s now in the product!  

This release has over 107 new features and improvements implemented. Check out the full release notes for more details.

Ready to download

The Bamboo Holiday Release is now ready for download – get started with a 30-day FREE trial or upgrade your current instance.

Or upgrade to Bamboo 3.4

Topics: atlassian blog agents bamboo holiday java management project release windows cloud development git javascript email-notifications
2 min read

Team Calendars 1.6 Released - Share Your Custom Dates

By Praecipio Consulting on Nov 28, 2011 11:00:00 AM

Atlassian’s Team Calendars development team has been working hard to make Team Calendars the glue between Jira and Confluence. They’re excited to announce that their next major release - Team Calendars 1.6 - is available for download now!

Since Team Calendars 1.0, you’ve been able to map default date fields in Jira – issue and version due dates – on a Jira Calendar for everyone to see in Confluence. This was really helpful for Product and Project Managers to visualize the schedule of a project. However, folks have since told Atlassian that these are not the only dates important to teams. Atlassian listened, and with the release of Team Calendars 1.6, they’ve extended the Jira Calendar type to support your custom date fields in Jira.

Display Custom Date Fields from Jira on Calendars in Confluence

If you have custom date fields for your Jira Projects – ‘QA Due Date’, ‘Scheduled Deployment Date’, etc – you can now map them on a Jira Calendar inside of Confluence.  It’s quick and easy to set up from wither the the ‘Create Jira Calendar’ and ‘Edit Jira Calendar’ dialogs.

The custom dates fields you select for any given particular Jira Project will show in month, week, and list views. When you combine your Jira and People Calendars you’ve got a solution that gives your team a better understanding of a project’s progress and the ability to identify potential resourcing issues that may impact its delivery.

How can this feature help you?

If your team is using Jira for project tracking or change management, check out this post to learn how Team Calendars 1.6 can help your team deliver projects on time, all the time, and keep track of when changes were made to your internal systems.

Losing track of all these new features?

We don’t blame you! Here’s a quick review of what Atlassian’s been up to, in case you missed it.:

Enjoy and keep your eyes open for a little present from Atlassian’s Team Calendars Development Team just before Christmas.

Topics: jira atlassian blog calendars confluence project release software development atlassian-products bespoke
2 min read

Jira + ITIL Working Together

By Praecipio Consulting on Jun 24, 2011 11:00:00 AM

Atlassian Jira's a remarkably flexible tool. For most who hear “Jira,” things like issue tracking, project management, and software development come to mind. Very rarely do people think of ITIL in relation to Jira. But then again, many don’t know what ITIL is.

If you’re a developer or in IT and don’t know what ITIL is, you should. It’s a set of processes for managing lifecycles with relationships to one another. It’s the most widely-accepted approach to IT service management in the world – a set of best practices drawn from public and private sectors around the world. ITIL doesn’t just apply to IT service management (ITSM), though – it’s a reliable methodology for managing any type of complex technological process.

Jira’s an Atlassian tool that’s phenomenal at lifecycle management (workflows, custom fields, etc). It’s designed to be issue-centric, built around managing issues or bugs that pop up within a product or service’s lifecycle. This functionality extends far and wide when you expand how you define an “issue.” On the surface, an issue is more like a problem – but considering an issue’s attributes, it can easily qualify as a task or milestone. With that in mind, Jira can facilitate far more than simple issue tracking. It can support complex process lifecycles.

Every process is a web of highly dependent relationships between regular and conditional tasks – including ITIL processes like Incident Management and Problem Management. The huge breakthrough here is making Jira projects and workflows represent (and support) ITIL processes. Let’s take an incident for example. An incident goes through several states:

(1) detection and recording
(2) classification and initial support
(3) investigation and diagnosis
(4) incident closure

A good Incident Management process within a good technology helps reduce meantime to recovery – i.e. recover from an incident. We all know how well Jira facilitates transitions and workflow. Let’s take it a step further…in ITIL-based Incident Management, we are supposed to designate incident ownership, actively monitor, track and communicate. BINGO! This what Jira does.

Let’s take this another step further. Problem Management is a process used to identify root cause to reduce the number of incidents – thereby increasing the meantime between failures. Using Jira, we can manage root cause analysis and associate the individual incidents (manifestations) back to the Problem Management record we’re analyzing. This ability to link records and collaborate makes Jira a great Problem Management solution. Add Confluence to the mix and the effectiveness is improved further.

Going another step further – having ITIL-based ITSM processes running in Jira alongside your organizations SDLC further helps IT align its capabilities to deliver the highest, best quality software and service delivery.

We’ve helped clients implement Jira to manage Incident Management, Change Management, Problem Management, Asset Management, Software Development, Testing… we love the Altassian products and so do our clients.

Topics: jira atlassian blog asset-management confluence issues management problem process reliability sdlc services software workflows tracking change development incident-management it itil itsm lifecycle methodology bespoke
3 min read

An Awesome Confluence Calendar Add-On

By Praecipio Consulting on Jun 21, 2011 11:00:00 AM

Built from the ground up for collaborative teams that use ConfluenceTeam Calendars is a must have fully-supported addition for your wiki.

 

Built for Your Specific Needs

After lots of listening and watching how you use Confluence, Atlassian noticed a trend. Your work revolves around people, projects and content. You need to:

  1. Quickly track and report on your project releases
  2. Understand how the availability of your team members can impact those projects
  3. Communicate the status of your projects and team’s availability to your stakeholders
  4. Plan events and dive deeper into Confluence content related to them

You also told us that current solutions make it difficult to share calendars, are not project-oriented, and are not tightly integrated with your content.

After a lot of listening and learning, Atlassian was stoked to announce the availability of Team Calendars for Confluence - where people, projects, and content meet.

Choose from Three Calendar Types

People Calendars to schedule team leave, Jira Calendars to track projects, and Event Calendars to plan just about anything.

1. Schedule Team Leave with People Calendars
Atlassian’s made it easier for you to plan events around people. People Calendars help you schedule team leave and travel planning, create your support and IT on-call team rosters, and and most importantly, help you plan who stocks the team beer fridge. With People Calendars you can:

  • Link events to people - displaying their profile picture against the event
  • Link events to content - link to your leave, travel or roster plans to the actual event
  • Create recurring events - quickly create rosters and repeating events

Creating rosters, scheduling team leave, and planning travel just go a whole lot easier since you always know the whereabouts of your teammates. 

2. Track Projects with Jira Calendars
Communicating the release plans for your projects is quick and easy with Jira Calendars. Pull project version and issue due dates into Confluence where everyone can see them – keeping your project on track. View them alongside your People Calendars to see how your team’s availability will impact your release schedule.

3. Plan Anything with Event Calendars
Event Calendars are perfect for sharing company milestones, team events, training sessions, public holidays, or any other type of event. Put them on a calendar that everyone can see and subscribe to. While this may seem like ordinary functionality, this calendar is anything but, as you can link your events to the wiki pages capturing all the finer details about those events. Finally, a calendar that’s tightly integrated with your content.

Share and Subscribe to Calendars

1. Share Any Calendar
Atlassian’s made it fast and easy to share the calendars you create with the rest of your team.
2. Embed Calendars
Embed your calendars on any page to keep everyone up-to-date. Put a Jira Calendar on your Development Team Dashboard in Confluence so your whole team can charge towards a common goal.

3. Search and Subscribe
Subscribe to popular calendars upon your first visit and search at any time to discover new calendars to help you build your own single source of truth. Search makes it easy to find and subscribe to calendars that are relevant to you.

 

Works with Outlook, iCal, and Google Calendars

1.Import from Google Calendars
Build your own single source of truth. Bring your calendars that live outside Confluence – Google and iCal – into Team Calendars. Mash them up with your existing Team Calendars so you have one place to go and view all your team events.


2. Subscribe to Team Calendars
If you live in email all day long you can still stay-in-touch by subscribing to Team Calendars from your favorite email client, like Outlook and iCal. 

Available Today – 40% OFF for a Limited Time

This is the first of many releases and to celebrate the release of Team Calendars for Confluence you can get 40% off the price of a new license (for a limited time).

Topics: jira atlassian blog calendars confluence dashboard google teams development integration marketplace-apps
1 min read

Ideas from SmartGrid Roadshow: Chattanooga

By Praecipio Consulting on May 5, 2011 11:00:00 AM

We’re having a blast at Chattanooga’s SmartGrid Roadshow this week. The show’s been a host to hundreds of industry-changing intelligence that will lead electric utilities into the next generation of energy. We’re here collaborating with other energy market technology leaders about how utilities can re-engineer their business processes to support grid digitization and more customer empowerment.

A key part of this is the role of open source in SmartGrid technology – and questions about how it will be leveraged within new industry standards for application development, infrastructure, platforms, etc (check out TVA’s code library, an open source project for Phasor Data Concentrators (PDC), for a taste).

In a world where climate change is already active (yes, it is), SmartGrid technology – which is already the direction of the energy industry – will shepherd us into an era of change. We’re excited to help utilities prepare to evolve. Thanks again to the folks who put together the Roadshow as a summit for new ideas.

Topics: news blog technology smartgrid utilities change development energy grid industry
1 min read

The "Business Stuff" Behind the Innovation

By Praecipio Consulting on May 3, 2011 11:00:00 AM

Great ideas sell, even without the fortification of brand or tangibility. If an idea’s well-built, well-defined, and in-demand, sales are almost guaranteed with a little marketing.

At SXSW in March we saw lots of great ideas – ideas that practically sold themselves. We spoke with some start-up app companies that had over 100,000 downloads in their first month. Another was growing so fast they were figuring out how to hire 50 people in their third month of operations. In these dream scenarios, it’s hard to imagine what more you need to succeed. With a 1500% growth rate, what’s to worry about?

But even lottery winners must face reality at some point. In this case, every business is still a business. No matter what you’re selling, you’ve got books. Records. Processes. If you’re going to succeed, you’ve got to have that stuff organized. The more dynamic and exciting your product is, the more sales you’ll make short-term. The more efficient and consistent you are, the more money you’ll make long-term. While developing efficiency and consistency is generally not as fun as product development and demos, it’s what fortifies the innovation you’re selling.

That’s the bigger picture of what we do. On the surface it looks like IT development strategy integration reliability blah blah blah, but really, it's enabling great ideas to stick around long-term. And that's not to strip those words of their meanings. Strategy, for example, determines the direction and scope of every business process that goes in and out the door. Integration determines if two of the systems you work with daily will actually talk to one another. And if things aren't reliable then you might as well go home and make toast, because your operations are metaphorical toast. We make great ideas into outstanding businesses. That’s what counts!

Topics: blog bpm business efficiency process reliability sxsw development integration it
1 min read

We [Also] Offer SharePoint, Custom Development Services

By Praecipio Consulting on Feb 8, 2011 11:00:00 AM

We do SharePoint. So do other companies. We develop custom software and web parts. So do other companies. If you walk outside, you may hear to the cacophony emitting from the rooftops: “Need SharePoint? Custom this? Custom that? Talk to us. Talk to US. TALK TO US!”

We participate in this because we have to. That’s how messages get heard. And now for a cliché marketing statement: we’re different from our competitors. But get past the cliché and consider our competitive advantage:

As a small firm, we’re able to execute our projects with more care and intentionality than most large firms. You’ll be acquainted with most of our team, including our Founder, throughout the course of the project effort – which creates a better sense of commitment and accountability in our relationship with you. Our small team has broad capabilities: whether you need SharePoint hosting, ITIL consulting, custom development, process improvement, …you’ll be working with the same group of people.

As social entrepreneurs, we leverage a unique type of capital in business. Market capitalism is built on such tangibles as land, labor, and financial capital, while social capitalism is built on creative, intellectual, and social capital – and a strong sense of community and involvement in the surrounding community. We strive to be engaged in what’s going on around us, using our resources to respond to the needs of our customers, community, and industry. As both businesses and individuals, we’re responsible for the collective well-being of our communities.

Praecipio Consulting is improving the community by enabling businesses to reduce their process-generated waste – making our environment more sustainable while reducing our clients’ costs. With competitive pricing, diverse capabilities, and a commitment to our services that isn’t based on numbers alone, we offer an experience that’s literally different than what you’ll find out there.

So, need SharePoint? Need custom development? Talk to us. We [also] want to help you.

Topics: praecipio-consulting blog bpm business management process sharepoint waste consulting-services continuous-improvement development itil bespoke
3 min read

Jira for the Gaming Industry

By Praecipio Consulting on Nov 24, 2010 11:00:00 AM

Altassian’s Jira is perhaps the best issue tracking and software development management platform around. While Jira can be used in many, many ways, it’s found a sweet spot in the gaming industry.

This post assumes the reader has a reasonable understanding of Jira. The post highlights how Jira and Greenhopper – which collectively make up Atlassian’s Agile approach – can streamline game development. Check it out:

Quick-start projects. In Jira, you can start a new project in less than five minutes. That’s great for developers, since new projects can spawn at anytime during the production process.

Attach files for visual reference. Most developers use Adobe software to design game interfaces. During the development stage, there are usually multiple people designing and updating prototypes – so it’s easy to get off track. With Jira, designers can attach the a screenshot of the latest prototype to a project page, so every one involved with the project can see where the interface is at and stay on the same page. And since Jira allows users to attach files to projects, tasks, time log items, and more, it’s easy for designers to offer team members a visual reference of where they’re at – even if they’re not in the office.

Support and ticketing. Jira helps IT support organizations handle hardware and software support more methodically. Support tickets can be submitted by anyone within the company. From there, they’re assigned to a qualified expert, and either resolved or escalated. This obviously benefits all businesses and not just those in the gaming industry. But for game developers on a tight schedule, hardware performance is critical – and a fast ticketing process ensures minimal downtime.

Bug tracking. Bug tracking is critical in the gaming industry. Jira’s organized, intuitive bug tracking system allows game developers to track the details, status, etc of every kink in the development process – ensuring better performance.

Document repository. Jira can also act as a document repository for files of all types. With a powerful search feature and page indexing capabilities, game companies can ensure quick access to important files – so long as they’re organized responsibly.

Crucible. A web based code review tool, Atlassian’s Crucible (a “friend” of Jira and Greenhopper) allows multiple people to review code online instead of having to crowd around a desktop or overhead projector – the “Google Docs” of code-writing. For game developers, that kind of collaboration is worth its weight in gold.

Greenhopper task tracking. Drag-and-drop task management that associates tasks with Jira projects, items, files, etc, etc. Completely intuitive, remarkably fast. We needn’t say more.

Customize to your heart’s content. Jira is easily and extensively customizable. Most of its customizations don’t require technical knowledge – so designers and developers with different skillsets can configure Jira with ease.

Insanely easy workflows. You don’t have to be a programmer to set workflows up in Jira. Develop workflows quickly to automate repetitive tasks.

Integration with non-Atlassian tools. Jira users can develop their own plug-ins to import and export data to and from Jira. This is crucial, since no software can tackle every need within an organization, and since game developers usually need to leverage multiple tools throughout their production.

That’s how game developers are leveraging Atlassian tools to streamline operations and production timelines. Again, it’s worth noting that much of what’s covered above applies to business of all types – not just those in the gaming industry. Check out our Jira blogs to learn more about how Jira (and “friends“)  can boost your operations.

Special note: If you’ll be attending South by Southwest (SXSW) in Austin in March 2011, stop by our booth at the SXSWi Trade Show. We’ll have a Jira demo live, and have our developers behind the table!

Topics: jira atlassian blog crucible show sxsw trade workflows tracking development gaming greenhopper industry integration it bespoke
1 min read

Client Spotlight: EPB of Chattanooga

By Praecipio Consulting on Sep 21, 2010 11:00:00 AM

Electric Power Board (EPB) is an electric and telecommunications company owned by the city of Chattanooga, Tennessee. EPB provides electricity, cable, and as of this month, the fastest internet in the US to greater Chattanooga.

EPB has showed itself as one of the most progressive public utilities in the US by, in addition to providing 1GB internet, actively building a 100 percent fiber-optic Smart Grid. EPB had already begun their Smart Grid program before the Obama administration included billions of dollars in grands for Smart Grid projects in the 2009 economic stimulus program. EPB’s internet offering piggy-backed off the fibers laid in place for their Smart Grid.

EPB’s Smart Grid has created a platform of innovation for the city of Chattanooga as a whole. In addition to offering an array of R&D opportunities, the Smart Grid has essentially invited companies from across the US to use the grid and 1GB internet streaming to work on complex projects and develop next-generation applications – a huge stimulus for the regional economy.

We’ve been proud to be involved with EPB’s innovative efforts since 2007. We share EPB’s passion for innovation, efficiency, and sustainability; sustainable energy practices and technology are critically important for our future. During our time in Chattanooga, we’ve:

  • provided Project Management for the development of EPB’s two new websites, EPB.net and EPBFI.com
  • implemented robust Microsoft SharePoint process frameworks for managing and facilitating legal matters, RFPs, and a host of other business processes
  • developed Process Lifecycle Management methodologies that have improved EPB’s operations
  • implemented ITIL-based methodologies and best practices, making EPB’s IT processes more consistent and repeatable

…and a whole lot more. Good technology supports good processes; good processes make for good profit and reducing expenses. It’s been great to help EPB reduce expenses during a critically important (and exciting) time.

Read more about EPB on their website – and check out the cool 1GB-powered things happening in Chattanooga at ChattanoogaGig.com.

Topics: blog assessments efficiency implementation internet management optimization process process-consulting project sharepoint smart development grid itil lifecycle microsoft bespoke
3 min read

FAQ's

By Praecipio Consulting on Aug 31, 2010 11:00:00 AM

Since we’re a consulting firm with a funky (we prefer “unique!”) name, we’re always armed with answers to the questions that follow “we’re Praecipio Consulting.” It would be a little silly to have an FAQ page on our website for such questions – so we’ve set out to answer the popular ones here. Ahem.

What does “Praecipio” mean?

For starters, it’s not a food or spice. Praecipio is Latin for the English words anticipate, advise, and instruct. We chose the name because its meaning matches our meaning. Praecipio, by definition, is what we do. You can read the full scoop on our name in Praecipio: It's What We Do.

So you do process management and bunch of software stuff – doesn’t that mean you’re just IT consultants?

No. Our partners are experienced in consulting in numerous areas – process lifecycle management, project management, custom software development, etc…and, of course, IT. All ends of a company, though, impact one another. One department’s initiative may impact another department just like the motion of a foot can impact the balance of the body.

When we say we work in all of these different areas, we mean to stress that we have to understand how the body works if we’re going to operate on the foot, so to speak.

I heard you host Microsoft Exchange, but couldn’t find much information about that on your website. Is that rumor true?

Yes. We offer Exchange migration, hosting, and support for businesses large and small, available upon request. We don’t advertise this heavily because it’s not our primary offering; we currently host Exchange for a handful of small businesses and have the solution ready and available for our clients’ benefit. Hosting has become a truly affordable and secure way to manage corporate email and content management systems.

We also host Microsoft SharePoint, offer cloud backup solutions, and re-sell / offer migration to Google Apps. If you’re considering any of these hosting solutions, talk to us now. We’d be happy to offer you advice and perspective.

You mention Microsoft technologies extensively. I run a Google Apps-based business – are you relevant to me?

Of course. Again, we re-sell Google Apps – and offer migration and configuration guidance to businesses who choose to “go Google.” Microsoft solutions aren’t best for everyone just like Google solutions aren’t best for everyone. We suggest the solutions that are best for our clients – not those with a particular brand name.

We do, however, have extensive experience with Microsoft SharePoint in particular. We have implemented SharePoint-powered solutions that have greatly lowered our clients’ operations expenses. Due to the success, we want to market that kind of solution to people we may be able to help, offering the proven track record as assurance. It’s rewarding to see our clients reduce their costs and grow using our solutions. Our SharePoint solutions have done just that, and if you think you can reduce your costs with a similar solution, we’d love to talk to you to learn more.

I’m a small business that doesn’t have an IT department or anything like that. Can you help me? Or do you just cater to the enterprise?

Yes, we can help you too! Partnering with smaller businesses (even one-man shops) offers us the chance to help you grow over time – which is essentially what we’re after with any work we do. Small businesses can take advantage of our free two-hour consulting sessions (we offer this to any first-time customer) for guidance and perspective. They can then have us as a point of reference as they grow.

Our hosting opportunities (Microsoft Exchange, SharePoint, cloud backups, Google Apps) are most appealing to small businesses, since very few small businesses (and large ones, for that matter) want to own a server of their own. We take care of hosting and support for businesses who want to take advantage of those tools without all the overhead.

You mention “process automation” on your website. Are you taking away people’s jobs?

Certainly not. We’re not deploying robots, either. Read the full scoop in 4 Misconceptions of Process Automation.

I noticed you didn’t cover [this] on your blog. Do you plan to tackle that topic in the future?

Sure. If you have a topic you’d like us to discuss on our blog, just throw us the idea – we’ll have our quills ready. Call us, email us, tweet us…or just post a comment on the blog.

We’d love to meet you. Talk to us here.

Topics: management process project sharepoint tips tricks development hosting lifecycle microsoft bespoke

Praecipio Consulting is an Atlassian Platinum Partner

This means that we have the most experience working with Atlassian tools and have insight into new products, features, and beta testing. Through our profound knowledge of Atlassian environments and their intricacies, we can guide your organization as you navigate these important changes.

atlassian-platinum-solution-partner-enterprise

In need of professional assistance?

WE'VE GOT YOUR BACK

Contact Us