UBC Theses and Dissertations
Dependencies in the context of aspect-oriented programming Gudmundson, Stephan
Software developers use dependencies to understand designs. An inappropriate dependency can be confusing, reduce the flexibility of the system or re-usability of a module, or cause problems in system maintenance or evolution. This thesis proposes three new kinds of dependencies: whole-class, whole-subsystem and call-graph dependencies. Several examples of each dependency are encountered in the analysis of two implementations of the same system, one in the AspectJ programming language and the other in the Java programming language. The expected effect of these dependencies on comprehensibility, evolvability and re-usability is described. Finally, the new dependencies proposed in this thesis are set in the context of existing work.
Item Citations and Data