The second conceptual component of ASD is collaboration. Complex applications are not built,
they evolve. Complex applications require that a large volume of information be collected,
analyzed, and applied to the problem—a much larger volume than any individual can handle by
him- or herself. Although there is always room for improvement, most software developers are
reasonably proficient in analysis, programming, testing, and similar skills. But turbulent
environments are defined in part by high rates of information flow and diverse knowledge
requirements. Building an eCommerce site requires greater diversity of both technology and
business knowledge than the typical project of five to ten years ago. In this high-information-flow
environment, in which one person or small group can't possibly "know it all," collaboration skills
(the ability to work jointly to produce results, share knowledge, or make decisions) are paramount.