Chapter 3: Analyzing Complex System Interactions
IT organizations represent complex systems on several levels. First, the process of software development is a system, as are the operations and support functions. Second, the inclusion of team members extends the software development system's complexity, as does their computing equipment, networks, tools, and software applications.
Suppose the IT department supports multiple Agile or DevOps development teams working on a single product. In that case, each product team would function as both an independent system and as a component of a more extensive system – a "team of teams." In these scenarios, all the teams must collaborate to support the ongoing development of the software product or digitally-enabled service. This chapter provides guidance on assessing the complexity of these (and any other types of systems) by evaluating the elements that make up the system, their connections, and types of interactions...