Unit II Assessment Question 2 Ramesh Punna Columbia Southern University Original Passage Large-Scale Complex IT Systems (Ian Sommerville, Dave Cliff, Radu Calinescu,Justin Keen, Tim Kelly , Marta Kwiatkowska,John McDermid, and Richard Paige): Complexity stems from the number and type of relationships between the system’s components and between the system and its environment. If a relatively small number of relationships exist between system components and they change relatively slowly over time, then engineers can develop deterministic models of the system and make predictions concerning its properties.
However, when the elements in a system involve many dynamic relationships, complexity is inevitable. Complex systems are nondeterministic, and system characteristics cannot be predicted by analyzing the systems constituents. Such characteristics emerge when the whole system is put to use and changes over time, depending how it is used and on the state of its external environment. Dynamic relationships include those between system elements and the system’s environment that change.
For example, a trust relationship is a dynamic relationship; initially, component A might not trust component B, so, following some interchange, A checks that B has performed as expected. Over time, these checks may be reduced in scope as A’s trust in B increases. However, some failure in B may profoundly influence that trust, and, after the failure, even more stringent checks might be introduced. Complexity stemming from the dynamic relationships between elements in a system depends on the existence and nature of these relationships.
Engineers cannot analyze this inherent complexity during system development, as it depends on the systems dynamic operating environment. Coalitions of systems in which elements are large software systems are always inherently complex. The relationships between the elements of the coalition change because they are not independent of how the systems are used or of the nature of their operating environments. Consequently, the nonfunctional (often even the functional) behavior of coalitions of systems is emergent and impossible to predict completely.
Paraphrase for above passage: Minimizing the relationships among the entities in large scale system reduces the complexity. Complex systems are not very scalable and would be huge effort when we need to do any changes over time. Relationships should be changing depending on their performances over the life cycle of application to be more robust and granular. Dependency between the software systems must be identified in design phase to make a large scale system and failure to do this process would result in unstable and fragile software system.