Outsourcing
Most outsourcing efforts are dispersed, CMMI-based development so applying the strategies discussed earlier will help you out here (also, see "Agile Outsourcing"; www.ddj.com/dept/ architect/184415344). The biggest challenge in an outsourcing situation is the propensity towards fixed bids. The challenge with fixed bids is that they force you into doing far more requirements modeling up front than is actually good for you. In "Examining the 'Big Requirements Up Front' Approach" (www.agilemodeling .com/essays/examiningBRUF.htm), I review evidence showing that writing a detailed requirements specification early in the lifecycle results in a clear 45 percent wastage on average, not to mention other problems.
Data Warehousing
There's nothing special about data warehousing projectsthey can be agile, too. In fact, leading DW practitioners, particularly Bill Inmon (www.inmoncif.com) and Ken Collier, make it clear that you must take an incremental, if not agile, approach to succeed. My experience is that the secret is to downplay the data-modeling aspects and instead focus on usage and testing, but more on this in a future column.
Conclusion
To summarize, I've heard a lot of excuses over the years as to why a given project team or organization can't be agile, and frankly few of them have proven to be valid. In this column, I explored the most common reasons why teams supposedly can't be agile and then described how to overcome the inherent challenges. The secret is to recognize that agility is a spectrum, not a black-and-white issue. Depending on your situation, you will be able to adopt some agile techniques but not others. Strive to find your agile sweet spot.
DDJ