Presentation is loading. Please wait.

Presentation is loading. Please wait.

Refactoring workshop, WCRE'03 Software refactoring guided by multiple soft-goals Yijun Yu, John Mylopoulos, Eric Yu, Julio C. Leite, Linda Lin Liu, University.

Similar presentations


Presentation on theme: "Refactoring workshop, WCRE'03 Software refactoring guided by multiple soft-goals Yijun Yu, John Mylopoulos, Eric Yu, Julio C. Leite, Linda Lin Liu, University."— Presentation transcript:

1 Refactoring workshop, WCRE'03 Software refactoring guided by multiple soft-goals Yijun Yu, John Mylopoulos, Eric Yu, Julio C. Leite, Linda Lin Liu, University of Toronto Erik H. D’Hollander, University of Ghent

2 Refactoring workshop, WCRE'03 1. Refactoring: modelling performance vs. complexity real*8 A(512,512), B(512,512), C(512,512) M = L = N = 512 do i = 1,M do j = 1, L do k = 1, N C(i,k) = C(i,k) + A(i,j) * B(j,k) GOAL: apply transformations to speedup the above program 20 times without increasing the code complexity 4 times

3 Refactoring workshop, WCRE'03 Experiment results Rationale in action >

4 Refactoring workshop, WCRE'03 soft-goal: Type [Topic]

5 Refactoring workshop, WCRE'03 Topic taxonomy Type taxonomy Decomposition method TYPE [TOPIC] TYPE [SUBTOPIC] TYPE [TOPIC] SUBTYPE [TOPIC] operationalization OPERATION- ALIZED SOFTGOAL Contribution interdependency

6 Refactoring workshop, WCRE'03 Label propagations verify the choices

7 Refactoring workshop, WCRE'03 2. Software evolution Without efforts, a software is generally subjected to 1. Continuing changes 2. Increasing complexity 7. Declining quality in terms of performance [Lehmann96] Laws of software evolution revisited

8 Refactoring workshop, WCRE'03 2. Header project: functionality and quality refactoring shift focus along evolution

9 Refactoring workshop, WCRE'03 3. The goal-driven refactoring process … 1. Modelling non-functional qualities as soft-goals [Mylopoulos92] 2. Are they met? Decomposing soft-goals into interdependency graph [Chung94] 3. Catalogue the refactoring steps as operationalized soft-goals and make selections [c.f. Tahvildari01, Zou02] 4. Apply the refactoring steps and propagate the labels up to re-assess the soft-goals [Giorgini02] 5. Release the product that satisfice the NFRs 6. Redo refactoring after functionality changes [Fowler99]

10 Refactoring workshop, WCRE'03 4. Summary 1. Modeling 2. Satisfiable? 3. Selection 4. Refactoring 5. Releasing Quality: type [topic] taxonomy Rationale: prioritization (bottleneck), metrics, constraints Operationalizations: refactoring steps + label propagation ++ + --- ++ + 6. Evolution SIG


Download ppt "Refactoring workshop, WCRE'03 Software refactoring guided by multiple soft-goals Yijun Yu, John Mylopoulos, Eric Yu, Julio C. Leite, Linda Lin Liu, University."

Similar presentations


Ads by Google