As seen in the June 2000 issue
Software Configuration Management: Effective and Economical
Version and software configuration management play an increasingly important role in modern networks. The Grasbrunner-based Ixos found a solution in Perforce that differs from others solutions with its simple configuration, quick implementation and minimal administration.
Ixos has been developing and marketing document management systems since 1988. As is usual for a young, fast growing software company, different systems were used by individual development teams for Software Configuration Management (SCM). A solution was therefore sought that would elegantly integrate or replace all the existing SCM systems. A satisfactory solution was found with Perforce.
Ixos is a leading supplier of e-business document management solutions for inter-enterprise system environments. The Ixos-Archive product line, a document management system, automates procedures such as imaging, archiving, searches, distribution and the presentation of documents across large organizations and between business partners. In addition, the company offers solutions for the management of e-business documents (Ixos-eCon) and the mobile access of business documents integrated in SAP's R/3 environment (Ixos-Mobile/3).
Ixos develops products for various platforms (Windows 95/98, Windows NT, Sun Solaris, HP-UX, IBM AIX, Linux, MacOS, etc.), some with access to a common source on different platforms. An SCM tool that runs of all of these platforms was therefore required. Presently, Ixos offers five products, each with a new version each year. This represents a total of 120,000 files and several million code lines. All development teams have been working on one Perforce server (Sun UltraSparc) since the conversion, which runs as a dual system and is mirrored daily on another identical Sun workstation, in case of hardware failure The Perforce server duo is connected by fiber optic lines.
Creating a List of Criteria
Managing the development of five products and a large development team requires a fast solution for reproducing each product version easily and quickly. To find a suitable system, Ixos drew up a list of requirements before making a decision. Since there were to be more than 200 users, the top priority was high performance, followed by the ability to do fast backups and recoveries with data-oriented storage if possible. The solution had to be available on all supported platforms and offer a Windows-oriented graphical interface for ease of use.
Another requirement was language independence - Ixos uses C, C++, Java, Perl, Indexe, Binaries, DLL, MS Word, etc. - and the support of automatic production with scripts (Unix shell scripts, make files, Perl scripts, etc.). In addition to the ability to integrate with Microsoft VisualStudio and to label with meaningful names, the SCM solution had to support individual product versions and different products (branching). WAN and ISDN support was a prerequisite, since many programmers work from home.
A server for Unix with no proprietary file storage system was required to offer fast accessibility to new versions of the operating system. In addition, the new solution needed to be able to track every action, preferably with email reports. The ability to import sources from all existing SCM systems (SCCS, VSS, CVS, PVS) had to be possible. Another requirement was the support of key words in the source files (for the version, date, etc.). Overall, the use of a single SCM tool had to decrease the administrative load.
A Decision is Made: Price/Performance Ratio
At two trade shows, Ixos representatives made a preliminary selection of five potential SCM solutions from different manufacturers. Three products were evaluated more closely in demonstrations. The final heat was between two products, including Perforce. Perforce won with its convincing price/performance ratio. "The overall decision-making process took five months, but it was worth it," stated Manfred Heiss, manager of the Development Department at Ixos.
Perforce is a comprehensive SCM system with version control, workspace management, atomic change transactions and a unique and powerful branching model. The high-performance SCM system is designed with ease of use and learnability in mind. The product's client-server architecture is also suitable for workspaces on local hard disks so that a network failure does not cut the user off from his work. The Perforce database also allows online backups, and has minimal downtime.
Ixos purchased 150 licenses from Perforce in February 1999 for the development team in Grasbrunn, near Munich. Gabriel Grebenar, one of the most experienced developers in the team who also was influential in the decision-making process, was responsible for introducing the new SCM solution. He took care of incorporating, configuring, distributing and structuring the Perforce system.
Smooth Introduction of the New System
Perforce was first introduced to the small 20-member development team that was using SCCS. The team was surprised by the quick and easy transition to Perforce. Grebenar installed a new Sun UltraSparc server as the Perforce server, imported all sources for this team on a Sunday afternoon, and converted the existing SCCS tree to read-only. The networks in the development department transmit at 10 Mbit/s and 100 Mbit/s. Windows NT, Unix and MacOS were set up as Perforce clients.
After a two-hour session the following Monday morning, the development team was able to independently use Perforce. The speed and graphical interface were judged to be comfortable and were positively received from the beginning. The success was measurable. After a month, all team members were experienced Perforce users.
Using the same procedure and with the same success, Perforce was introduced to four other development teams, and the number of trained Perforce users rose to 50 employees. This made all the other developers curious, and they wanted to change to Perforce for their projects. No problems were noted during the additional conversion process to Perforce, and all the developers were quickly convinced of the advantages of this SCM solution.
The developers who work from home part-time were quite satisfied using the Perforce server via ISDN. Working via telephone lines is a snap using the Perforce compression mode.
Positive Acceptance Among Employees
At Ixos, word about the favorable experience with Perforce spread beyond the development department. For example, the technical writers in the PI (Product Information) Department now also use Perforce. By the end of 1999, 100 additional licenses were purchased to integrate into the new system all branch offices and departments not included in the initial introduction.
"At present, over 90% of the data sources for the two latest versions of Ixos Archive are administered using Perforce," states Heiss. The developers at Ixos have set up an automatic generation process on five computers (two Windows NT, one Sun Solaris, one HP-UX and one IBM AIX) that determines the newest versions of all required files from Perforce and simultaneously compiles and builds the two latest versions of Ixos archives. 100% of the next version of Ixos Archive is to be developed using Perforce.
Substantial Savings in Time and Money
The advantages are obvious. Substantial savings in time and money can be realized especially during the finishing process and the final tests of the new versions. Particularly during the final system tests in the Quality Management (QM)department, it is essential to eliminate relevant program errors in the new version in order to prevent changes in parts of the software that have already been tested. Work with Perforce ends when the new version is given to the QM department. The developers can only eliminate errors with the permission of the version manager. These processes are documented and can be reviewed using Perforce at any time.
Perforce has proven to be extremely reliable and stable in practice at Ixos, which is the foremost requirement for using this software since 150 developers depend on this system. Since its introduction in February 1999, there has not been a single day of downtime. The support hotline was only used once, "less than any individual SCM system beforehand," according to Manfred Heiss.