Teaching a Goliath to Fly

  • Authors:
  • Salim Nair;Prasad Ramnath

  • Affiliations:
  • Primavera Systems;Primavera Systems

  • Venue:
  • ADC '05 Proceedings of the Agile Development Conference
  • Year:
  • 2005

Quantified Score

Hi-index 0.00

Visualization

Abstract

When Primavera Systems decided to adopt agile methodologies for the development of their Project management suite, no one expected it to be easy. One part of the suite is a desktop solution with about 1.5 M lines of code in Delphi comprised of several applications. The other part is a set of web enabled applications using J2EE and Java. The development has tight release cycles and a high demand from marketing for new features. This paper describes from a software-architecture perspective, the transformation of a largely waterfall-based development strategy into an agile, test-driven practice. It looks at the obstacles and difficulties we faced during this change in the context of the desktop application and, the way we approached refactoring legacy code to make it testable. We describe how a Business Object Framework was created in an evolutionary manner as part of this process. The lessons learned from this year long process is summarized in the form of 5 axioms.