Too complex for complete analysis Separation into non-interacting subsystems distorts the results The most important properties are emergent Too organized for statistics Too much underlying structure that distorts the statistics Organized Complexity\(Weinberg) Copyright Nancy Leveson, Sept 1999
Requirements specification: A structured document that sets out the services the system is expected to provide Should be precise so that it can act as a contract between the system procurer and software developer and thus needs to be understandable by procurers and developers
design: added inheritance, multiple inheritance, and polymorphism to ADT In process added complexity and increased some types of connectivity Lots of claimed advantages -- so far empirical evaluation is not supporting them well
A Testing EXercise (From Glenford Myers: The Art of Software Testing A program reads three integer values from a card. The three values are interpreted as representing the lengths of the sides of a triangle. The program prints a message that states whether the triangle is scalene iso
Fairly primitive and predictive power limited Function Points Count number of inputs and output, user interactions, external interfaces files used Assess each for complexity and multiply by a weighting factor Used to predict size or cost and to assess project productivity
Can programming language influence correctness? anguages affect the way we think about problems The tools we use have a profound(and devious) influence on our thinking habits, and, therefore on our thinking abilities?