Chrysler Comprehensive Compensation System
The Chrysler Comprehensive Compensation System (commonly referred to as "C3") was a project in the Chrysler Corporation to replace several payroll applications with a single system. The new system was built using Smalltalk and GemStone. The software development techniques invented and employed on this project are of interest in the history of software engineering. C3 has been referenced in several books on the Extreme Programming methodology. The software went live in 1997 paying around ten thousand people. The project continued, intending to take on a larger proportion of the payroll but new development was stopped in 1999.
The C3 project started in 1993 by Tom Hadfield, Director of Payroll Systems, under the direction of CIO Susan Unger. The initial spark for the project was a small object-oriented prototype built by Hadfield. Smalltalk development was initiated in 1994. The end goal was to build a new system to support all the payroll processing for 87,000 employees by 1999. In 1996 Kent Beck was hired to get the thing working; at this point the system had not printed a single paycheck. Beck in turn brought in Ron Jeffries. In March 1996 the development team estimated that the system would be ready to go into production around one year later. In 1997 the development team adopted a way of working which is now formalized as Extreme Programming. The one-year delivery target was nearly achieved, with the actual delivery being a couple of months late; the small delay being primarily due to lack of clarity regarding some business requirements. A few months after this first launch, the project's customer representative — a key role in the Extreme Programming methodology — quit due to burnout and stress, and couldn't be replaced.
The plan was to roll out the system to different payroll 'populations' in stages, but C3 never managed to make another release despite two more years' development. The C3 system only ever paid 10,000 people. Performance was something of a problem; during development it looked like it would take 1000 hours to run the payroll, but profiling activities reduced this to around 40 hours; another month's effort reduced this to 18 hours and by the time the system was launched the figure was 12 hours. During the first year of production the performance was improved to 9 hours.
Frank Gerhardt, a manager at the company, announced to the XP conference in 2000 that DaimlerChrysler had de facto banned XP after shutting down C3; however, some time later DaimlerChrysler resumed the use of XP.
- ^ Gerold, op. cit.
- ^ Highsmith, op. cit. page 298
- ^ c2 wiki on c3
- ^ C. Hendrickson, 2001, Will Extreme Programming kill your customer?, Position Paper, OOPSLA 2001.
- ^ Garzaniti 'Optimizing a Payroll System' in Fowler op. cit. pages 72 – 73.
- ^ Gerold, op. cit.; date is given in the usenet thread[vague]
- ^ c2 wiki on termination
- ^ see usenet thread[vague]
- Jim Highsmith (editor) Agile Software Development Ecosystems ISBN 0-201-76043-6
- Martin Fowler, Refactoring, Addison-Wesley Professional, ISBN 0-201-48567-2
- Kevin J. Aguanno, Managing Agile Projects, Multi-Media Publications Inc, 2005. ISBN 1-895186-11-0, page 33