- Perl itself was not stable enough to meet CA's needs.
- Open source Perl had some multithreading and multiprocessor issues as well as scalability problems.
- Need to be sure that a solid, trusted version of Perl is used.
- Integrate ActivePerl from ActiveState into SiteMinder and other tools in CA's web access control product family.
- Ability to find and address a regression in the core product within 24 hours of inadvertent defect insertion.
- Raise the bar on quality as well as cut the cost of expanding CA product matrix.
- Not only is it reliable, scalable and enterprise-ready, ActivePerl saves CA development time and dollars.
CA is one the largest independent software companies in the world. Seven years ago the company added CA Siteminder Web Access Manager to its roster, which has since become one of CA's most popular products.
CA SiteMinder Web Access Manager is an enterprise-scale Internet access control system. It provides more than 1400 customers with secure access to web applications and websites for employees, customers and business partners. With SiteMinder, CA's customers can rest easy knowing their applications and web resources are safeguarded and that all web access activities meet rigorous compliance standards and requirements. A majority of the Fortune 500 use CA Siteminder in their businesses.
Perl: Perfect for Automated Testing
In order to assure consistent quality across a broad product matrix, CA built a programmatic API for automated testing using the Perl open source language. Perl was a natural fit for the task because it's well suited to parsing and manipulating large amounts of data. It's also a familiar and simpler programming language for CA's customer base of system administrators, data base administrators and IT professionals than either Java or C++. Plus, Perl offers solid interoperability and expedites cross-platform development, a key requirement as SiteMinder runs on multiple platforms.
But, when CA investigated Perl in 2000, they weren't convinced the existing, free version was stable enough for their needs. Lawrence Backman is a Vice President at CA. He says at the time, open source Perl had some multithreading and multiprocessor issues as well as scalability problems.
"CA SiteMinder is an enterprise level product so we had to be sure we were using a solid, trusted version of Perl," said Backman.
So, in 2001, CA integrated ActivePerl from ActiveState into SiteMinder and other tools in CA's web access control product family.
ActivePerl is recognized as the industry-standard Perl distribution. It's an enterprise-class distribution used by millions of developers around the globe. The ActivePerl OEM Licensing package–used by CA–is renown for its ease of implementation, quality-assured code, and comprehensive technical support. Typical ActivePerl results include shortened development cycles, increased efficiency and easy, risk-free, out-of-the-box enterprise licensing.
ActivePerl in Action
CA primarily uses ActivePerl to run test automations for the SiteMinder family of products. The product set spans a test matrix of more than 350 distinct platform combinations.
Because ActivePerl supports all these platform combinations, CA has been able to take Perl to 32/64 bit platforms of all the major operating systems without having to worry about OS or platform differences. These test automations are the first line of defense against inadvertent regression-instances where a feature stops working or performance slows. Here's how it works:
CA's QA test team created a series of Perl modules with more than 10,000 test cases. These test cases determine whether or not SiteMinder is functioning correctly and insures against inadvertent regressions across the full platform matrix. Every night, CA runs these test cases against ActivePerl for SiteMinder builds on 20 different platforms. The test cases decompose HTTP requests and responses going to and from a web server and verify that the SiteMinder access control components are providing the correct security operations.
In the screenshot of SiteMinder's test portal below, each cell in the grid represents a platform combination of the product. Automation tests run against each platform using ActiveState's ActivePerl.
These quality assurance tests are critical because they are CA's first line of defense when it comes to maintaining and improving product quality.
"Using ActivePerl, we are typically able to find and address a regression in the core product within 24 hours of inadvertent defect insertion," said Backman. CA does regular maintenance on SiteMinder, which may result in 25 or 30 fixes a month. It's easy to unintentionally introduce regressions during a fix; automated testing ensures that doesn't happen. If it does, CA fixes the problem immediately.
"ActiveState has both allowed us to continuously raise the bar on quality as well as cut the cost of expanding our product matrix," said Backman.
ActivePerl Can Be Good For Business
Although CA's development team has the know-how and experience to work successfully with the Perl code available free from the Comprehensive Perl Archive Network (CPAN) website, Backman says using ActiveState's enterprise-level Perl distribution makes a lot more sense. Not only is it reliable, scalable and enterprise-ready, ActivePerl saves CA development time and dollars.
Maintaining, updating, reinstalling, configuring and porting Perl is not the best use of CA's developers' efforts. By leaving Perl infrastructure maintenance up to ActiveState, CA's developers can focus squarely on enhancing SiteMinder and developing new features that drive the product's marketability and revenue.
As for code quality, ActivePerl meets Backman's and CA's high standards. He says the last seven years with ActiveState has been a smooth ride. Not only does ActivePerl deliver on platform independence-SiteMinder runs on more than 20 platforms-it's grown steadily alongside SiteMinder's increasing requirements. So much so, that CA has not had issues with ActivePerl's robustness or scalability.
Technical support and expert Perl advice comes packaged with CA's OEM version of ActivePerl. While CA made use of ActiveState's tech support a bit at the beginning, Backman says they haven't made a support call in the last three years.
"It's rare to say about third-party software...but over the years we really have had very few issues with ActiveState's software," he said. "ActivePerl is a core part of our product. It's a key piece of our development cycle and is included in every version of SiteMinder we ship."