Perforce has been so integral to our ability to effectively and efficiently develop our products and run our systems, that we'd be in a world of hurt without it."

Sonny Pham

Build and Release Engineer at CareFusion

CareFusion logo


Sonny Pham is a full time administrator at CareFusion. He has been with CareFusion for more than two years and currently leads the Perforce release efforts.

Development Environment
at a Glance

Company name: CareFusion - Alaris and Pyxis Division

Headquarters: San Diego, CA

Industry: Healthcare

Perforce customer since: 1994

Number of Perforce users: 360

Connectivity environment: Dedicated LAN/WAN with T1 for each server

Number of development sites: 3 (2 in San Diego, California, 1 in Quebec, Canada)

Number of files: 800,000 on the 1st server and 9,105,062 on the 2nd server

Average File Size: 1 MB

Type of files stored in Perforce: Visual Studio, C, C++, C#

Number of changes: 180,000
Server 1 - 98,000
Server 2 - 82,000

Number of administrators: One Perforce Administrators

Client platform: PC running various Microsoft Windows Platform, such as XP, Windows 2003, Vista

Main server: 2 - AMD Processor 265, Dual-Core, 1.8GHz, 4GB of RAM, 4TB hard drive One each for Pyxis® and Alaris®

Customer Profile

CareFusion is a global corporation serving the health care industry with products and services that help hospitals improve the safety and quality of care. Headquartered in San Diego, California. CareFusion (NYSE: CFN) employs more than 15,000 employees worldwide, serving customers in more than 120 countries.

CareFusion uses Perforce as their Software Configuration Management (SCM) system to store and version their source code and digital assets for their market leading technologies; Pyxis® and Alaris®. Pyxis® Perioperative Solutions help ensure that clinicians have the supplies and medications they need at the right place and time, while Pyxis® Medication Management positively impacts patient safety across the entire continuum of care. Alaris® pumps and sets are used in patient care for non-invasive medical monitoring of patients.

Achieving Compliance with Perforce

CareFusion is heavily regulated by healthcare code and compliance regulations. Large data sets are stored for the various product lines, so traceability is vital for auditing.

"We need to be careful to ensure that our data demonstrates compliance for quality and auditing purposes at every point. Perforce is particularly efficient at distributing vast numbers of files. It can manage source code and handle the distribution of files to live runtime environments and provide answers to the whodunit-type questions with regard to source code and updates for production and QA. Perforce provides an audit trail for pharmaceutical manufacturers according to the rules published by the Office of the Inspector General for the U. S. Department of Health and Human Services, the AdvaMed Code of Ethics on Interactions with Health Care Professionals, and applicable laws," explained Sonny Pham, the Perforce administrator at CareFusion.

"Perforce also supports traceability by controlling access through administrator tools that define permissions to authorized users", added Pham.

Centralized Asset Management System

Before we standardized on Perforce, each group used their own process to store files. Development, document control, project management, QA, and marketing used multiple folders or branches to maintain code, digital assets, projects schedules and documents for each release.

"Collecting all the components for a release was cumbersome and painstaking. A centralized solution was needed to streamline the process. To bring a method to this madness, all the groups were asked to store their assets within Perforce while a solution was sought. Soon users noticed that Perforce was very effective as a centralized versioning and storage repository, and made the tasks at hand easy. Users quickly tapped into the potential of Perforce using its feature toolset to manage all the files required for a particular release. Only the files for each release were merged to the release line from the development line, making my job easier. Perforce is an administrator's dream tool," noted Pham.

Perforce Is An Administrator's Delight

Pyxis® and Alaris® are two main product lines that have over four-dozen offerings and multiple monthly releases with varying schedules. Any SCM tool in use needs to be able to handle these releases seamlessly.

"As a full time administrator, I manage about 27 releases a month for Pyxis® and Alaris®. There are over 50 offerings between the two product lines and their software and related documentation is maintained under Perforce.

Perforce makes it easy to manage multiple release lines for the products and leaves me plenty of time to enforce rules and implement triggers for the purpose of generating reports, code reviews and managing the project. Additionally, I can easily monitor the bug tracking tool as well," said Pham.

"At the 2009 Perforce User Conference, the Perforce technical support team gave me a quick tutorial on the Administration tool. Many of our super users are now trained to use the Administration tool and are efficiently managing permissions for their teams," added Pham.

"Perforce constantly amazes me. Their technical support is world class, it has many integrated solutions to choose from, and is the easiest tool to learn and administer. I could not have asked for better," concluded Pham.

Distributed Development Made Easy

CareFusion performs development in two geographical locations: San Diego, CA and Quebec, Canada. The Perforce server is located in San Diego and is accessed from two locations within the city, and from Quebec, Canada through a Perforce Proxy (P4P) server. File activity is constant between the offices.

"Performing a sync task happens rapidly and opens for edit and submits are nearly instantaneous, irrespective of file sizes. The power of Perforce is noteworthy; seamlessly handling large data sets and scaling across distributed teams. Initially when implementing the proxy server we noticed there was a sizeable lag between the main and proxy servers, so tests were performed to analyze the problem. We soon realized that the issue wasn't with Perforce but with our network. Resolving the issue let us access all the pending files within a matter of minutes and we were able to resume work efficiently", explained Pham.


All trademarks or registered trademarks are property of their respective owners.