Helix Core Is at the Heart of Drake Software's Development Stability
Drake Software provides tax preparation software for tax professionals. They were using Tortoise SVN. But as their projects grew, Tortoise’s performance deteriorated. Rather than enabling flexibility and growth, their version control system was unstable and stifled innovation.
They needed a version control solution that met the demands of financial compliance and auditing. And their development teams needed a unified solution for greater productivity. The solution? Upgrading to Helix Core.
With Helix Core, Drake Has:
A scalable solution they won't outgrow.
Superior performance over other tools.
Complete visibility across development changes.
with hands down the best performance I’ve seen from any version control product. We pretty much walked out of the Stone Age and into the light.”
Drake Software is a top-tier provider of tax preparation software for industry tax professionals worldwide. Headquartered in Franklin, North Carolina, Drake is constantly building new and better features into their product to support long-term business viability and attract new clients. With more than 40 years of experience in the tax industry, Drake has earned a reputation for stable yet evolving software solutions. But as the company has grown, so have their development teams, and Drake needed to upgrade their product development platform with the flexibility, scale, and control needed to meet stringent compliance requirements while adapting to a variety of customer environments.
“As we expanded development staffing, it became harder to stay on the same page and not step on each other’s toes,” says Jay Eager, a senior programmer with Drake Software.
Drake’s accounting development group previously used Microsoft VSS for source code and project backups, which was viable for a time, especially if only two or three developers contributed and were working in adjacent cubicles. But the system collapses at scale, as Drake noted, opting to depart from VSS for a new solution to bridge their development gaps.
Jay began leading the company’s accounting development team – a roster of 10 developers and a handful of designers, accountants, testers, and writers – with the goal of implementing a better long-term system. Across two offices in North Carolina and Tennessee, Drake began evaluating a more modern approach in order to best support a change management environment with complete traceability.
“My team was given the opportunity to envision a new way to develop software,” says Jay. “No holds barred.”
Helix Core was the only solution capable of achieving that vision.
During the evaluation of Helix Core, Drake decided to create an ad hoc competitive analysis, comparing Jay’s approach against a development team already utilizing Tortoise SVN’s open source version control system.
For three months Drake operated both systems, building an A/B sample size of productivity. The winner wouldn’t necessarily take over Drake’s development workflows en masse, but for Jay, it was validation that his approach with Helix Core was too impressive to overlook.
“I got to watch firsthand as SVN’s projects grew to several GBs of versioned source control,” says Jay. “This caused the wheels to fall off the cart,” adding “Commits, merges, force gets, you name it — in SVN, operations took 15 minutes instead of three with Helix Core.”
The process and system improvements in such a short time due to Helix Core were remarkable, according to Jay.
“Perforce nails rock-solid version control right out of the box with hands down the best performance I’ve seen from any version control product,” says Jay. “We pretty much walked out of the Stone Age and into the light.”
IP & Compliance
In addition to added scale and efficiency, Drake also needed a solution that could protect their IP as well as provide rapid compliance auditing and comprehensive change traceability.
“Most companies have flimsy change management policies,” says Jay. “That doesn’t cut it for Drake. We needed something a little more living and breathing. Something integrated into the day-to-day process.”
Jay appreciated the ability Helix Core has to completely track a request for change from inception, through design and implementation, to testing, and on to product release.
“Our compliance department loves the change management features.”
Helix Core gives Drake drop-of-the-hat audit compliance, which they’ve already seen in action.
In October, a tax compliance auditor requested every development change from Drake developers over the previous month. The report included 400+ changelist changes and more than 8,000 pages of PDFs, issue tracking documents, and development commits, line by line.
For Jay, all it took to produce a mountain of data was a simple request in the P4 command line.
“I basically swamped them,” says Jay. “The auditors didn’t come back with that request.”
Offering full traceability of relationships and links between development artifacts is an invaluable resource for Drake, but, above all else, it’s protecting the proprietary data that is most vital.
“Our source code is the crown jewel of our intellectual property.”
And Helix Core has proven to be at the heart of Drake’s development stability.
“I know Helix works because I see it work day in and day out.”
Streams from a Single Source
Helix Core has a unique branching feature called streams that delivers out-of-the-box efficiencies for many product management and development processes.
“The minute I saw Helix streams, I knew I had found a home.”
Sometimes called “branches with brains,” Perforce streams offer a containerized approach that supports stable codeline policy with easy-to-use, out-of-the-box features that dramatically reduce the reliance on external triggers and scripts commonly used to control what users can do.
With Helix Core, users can impose rules that define exactly how files can be worked with, including how users move changes between streams.
“Bad check-ins pretty much stopped.”
With streams, change is propagated in a controlled fashion through a hierarchy that fits your specific development pipeline. Set up dedicated streams for specific tasks, such as mature, isolated streams for release iterations or stable, experimental streams for development innovation. Further, you can define a stream’s view, giving all users a consistent view of stream contents.
“It’s not physically possible to single-handedly hurt the product,” says Jay.
No matter the issue or the error, Helix Core stabilizes your code production and valuable IP with an immutable history.
To deliver Drake software solutions, the product teams have developers creating source code while designers create state and federal forms, fillable PDFs, and other documents that embed into Drake software. With development weaving business logic function into these same documents, such as automated calculations and data population, Drake needs to unite the two disciplines simultaneously.
Helix Core offers tools, such as Helix Merge and Diff Tool (P4Merge) to handle merge conflicts and compare image, branch, or folder history over time. Drake has leveraged the tools within Helix Core, making it easier to contribute thanks to features that deliver better results without a cumbersome learning curve.
“P4Merge is very easy to use for developers and designers alike,” says Jay. “The merge and diff tools are the best. Bar none.”
Helix Core offers compelling features to manage development changes to source code, but, most importantly, Helix Core provides an ease of use, where other more complicated tools would buckle, as many similar functions are stitched together from third-party tools.
Integrate Your Process. Integrate Your Tools.
The watermark of a great product solution is an offering that performs just as developers anticipate: intuitive interfaces, familiar workflows, and low learning curves for users.
The Drake development team hardly missed a beat while implementing Perforce, an almost unprecedented transition when introducing a shiny new solution.
“Our developers wholeheartedly adopted Perforce from day one.”
That’s probably because Perforce is best-suited to integrate with the tooling developers already use.
“The [Helix Core] interaction between Atlassian and Visual Studio? Seamless,” says Jay. “Absolutely seamless.”
The fact that Helix Core plays nice with industry tools means you lose no development bandwidth or output. No need to put projects on hiatus to invent or configure ad hoc workarounds for system tooling. Helix Core accepts developer-preferred tools with arms wide open.
“I’ve worked in previous shops and watched too many days of work get inadvertently lost or deleted,” says Jay, speaking on less unified approaches that weren’t server-centric and failed to integrate with industry tools.
“I don’t know how you did it, but it all works together.”
Drake is making strides in development that were impossible before Helix Core.
Other systems fail the enterprise due to low visibility of IP assets, create latency between many distributed users, or simply cannot integrate with a team’s preferred tools. That’s not an issue with Helix Core.
“The way we have it implemented, Helix Core is the skeleton where all the muscle hangs.”
To learn more about the enterprise scalability, speed, and strength of Helix Core, sign up to attend our next live demo.
Still have questions? Contact us.