OOAD UML COMPLEX SYSTEMS Attributess of a complex systems 1 Hirarchy 2 Primitive component is arbitrary 3 Intra component linkages are stronger than inter component linkages 4 complex systems sub systems in different combination 5 computer system evoluated from simple system Some basic concepts strategies in the study of systems Abstraction We have developed an exceptionally powerful technique for dealing with complexity We abstract from it Unable to master the entirety of a complex object we choose to ignore the inessential details dealing instead with the generalized idealized model of the object Wulf in Shaw 1981 Formality Rigor at each stage in the development of a system Divide and conquer Divide a complex problem into a set of simpler problems that can be solved Hierarchical ordering Order the simplification of the problem in divide conquer in hierarchies Cohesion coupling Modularise the system such that interactions within components cohesion is maximised and interactions between components coupling is minimised This way the impact of errors when they arise is localised and does not cascade through the system Diagnosis of offending components is also made easier Information hiding Each module or subsystem must have available to it just the information that is needed by it Conceptual integrity Consistency in design Completeness Ensuring that the design meets all the specifications Logical independence Emphasis on the statement of system objectives in terms of logical functions independent of physical implementation Correctness Efficiency Correct in the sense that the design meets all the user requirements Efficient in that the system accomplishes the objectives with minimum computing resources