Frances Hwang notices that in the recent NYC SPIN talk on software litigation Ed Yourdon highlights agile practices with the ominous phrase "Beware XP, RAD, 'agile'”. From my notes I see that Ed clarified this statement a bit by characterizing agile practices as useful for projects in which the participants know each other fairly well. This seems reasonable; smaller projects and small groups of people who have worked together before can probably iron out issues and breakdowns in communications, outcomes, and expectations.
But Frances' real question is How can software engineering best practices be discovered, invented, and adopted in the face of lawsuits? It's a real question, because experimentation is needed. I agree with Frances; software engineering is in a formative phase. At the same time, software product and service developers need to be accountable for the components and systems they build. For me, agile approaches, particularly test-driven development and unit tests, can go a long way to satisfying documentation requirements. Visible and confirmable system behavior might avoid mis-understandings about expectations for customers, users, and developers. And I believe that these kinds of empirical practices can work for small and large projects.