80 likes | 166 Views
Testbed for Aspect-Oriented Software Development: TAO. Phil Greenwood and numerous other contributors. Various Barriers. Available systems lack complete documentation. Difficult to find AO and non-AO implementations for the same system.
E N D
Testbed for Aspect-Oriented Software Development: TAO Phil Greenwood and numerous other contributors
Various Barriers • Available systems lack complete documentation. • Difficult to find AO and non-AO implementations for the same system. • Need to guarantee that the non-AO and AO decompositions are good ones. • Difficult to find or develop from scratch a plausible “benchmark”. • many risks: time-consuming task, inherent bias, etc… • collaboration is the only alternative left. • Quantitative or qualitative indicators are often NOT ready for use. • Replication of studies becomes a pain.
A Testbed for AOSD • Towards more scientific and cohesive research. • Serve as a communication and collaboration vehicle • Achieve widely-accepted exemplars, indicators, and data that can be reused and refined. • Facilitate the identification of “unknown” problems and benefits inherent to AOSD. • Effects throughout the lifecycle. • Bottlenecks specific to certain SE phases and their transitions. • Accelerate the progress in the area by offering context to pinpoint technique-specific problems.
Testbed Elements Design Stability Study
Completed Studies • “On the Impact of Aspectual Decompositions on Design Stability: An Empirical Study” ECOOP 2007. • “A Comparative Study of Aspect-Oriented Requirements Engineering Approaches” ESEM 2007 • “On the Impact of Evolving Requirements-Architecture Dependencies: An Exploratory Study” CAiSE 2008 • “Pointcut Rejuvenation: Recovering Pointcut Expressions in Evolving Aspect-Oriented Software” ICSE 2009 (under review) • “Investigating Pointcut Fragility: An Exploratory Study” AOSD 2009 (under review) • “Semantic vs. Syntactic Compositions in Aspect-Oriented Requirements Engineering: an Empirical Study” AOSD 2009 (under review)
On the Impact of Aspectual Decompositions on Design Stability: An Empirical Study • Multi-dimensional analysis of AO and OO implementations which included: • Modularity Sustenance. • Observing ripple effects. • Aspect types which are susceptible to instability. • Satisfaction of basic design principles through the releases. • Outcome Highlights • AO solutions required less intrusive modifications. • Aspectual decompositions satisfy the open-closed principle. • AO modifications tended to propagate to seeming unrelated modules.
A Comparative Study of Aspect-Oriented Requirements Engineering Approaches • Comparison of four eminent AORE approaches which involved analysing: • Time effectiveness (person-minutes). • Accuracy of their produced outcome. • Precision and recall of the models produced . • Identifying the activities that are the main bottlenecks in AORE approaches. • Main outcomes. • Composition specification and conflict analysis activities are the most time consuming. • Common framework for comparing AORE approaches in order to facilitate future AORE evaluation exercises.
On the Impact of Evolving Requirements-Architecture Dependencies: An Exploratory Study • The goal of the analysis was to characterize: • How the nature of requirements’ dependencies can lead to tight or loose interconnections with architectural elements. • The most architecturally-significant requirements’ dependencies. • How the requirements’ dependencies evolve during maintenance changes. • Significant findings: • Conditional and service dependencies are architecturally significant. • Infrastructure dependency has high impact for adaptive change. • Rare to have isolated dependencies pull the architecture in various directions.