Presentation is loading. Please wait.

Presentation is loading. Please wait.

1 FWO Research Network Foundations of Software Evolution Research Meeting Friday, September 20, 2002 Technical University of Vienna Vienna, Austria.

Similar presentations


Presentation on theme: "1 FWO Research Network Foundations of Software Evolution Research Meeting Friday, September 20, 2002 Technical University of Vienna Vienna, Austria."— Presentation transcript:

1 1 FWO Research Network Foundations of Software Evolution Research Meeting Friday, September 20, 2002 Technical University of Vienna Vienna, Austria

2 Welcome by Mehdi Jazayeri

3 FWO-WOG, September 2002, Vienna © Tom Mens, Vrije Universiteit Brussel 3 Today’s Schedule 9:00 Welcome by Mehdi Jazayeri 9:30 Overview of past activities and finances by Tom Mens 10:00 Overview of ESF RELEASE network by Serge Demeyer 10: Coffee break :00 Talk about Evolution Taxonomy by Tom Mens 11:30 Discussion about Evolution Taxonomy 12: Lunch :00 Summary Q&A Software Evolution by Tom Tourwe 13:30 Discusion about Q&A Software Evolution by Serge Demeyer identification of opportunities for collaboration 15: Coffee break :30 Discussion about future activities 17:00 End of the workshop 20: Workshop Dinner ---

4 Overview of past activities and finances by Tom Mens

5 FWO-WOG, September 2002, Vienna © Tom Mens, Vrije Universiteit Brussel 5 Overview of finances for 2002  Available budget for 2002: 12394,68 EUR + rest of last year: 7715,44 EUR  Research visits-1274,33 EUR  Conferences and workshops-5662,44 EUR  WOG meeting (18/1/02)3746,46 EUR  ECOOP workshop USE 457,50 EUR  IWPSE ,48 EUR  SEKE ,00 EUR  network lunches- 118,40 EUR  special issue J. software evolution - 66,86 EUR  other?  ? boeken mens tom 19,81  ? kost Tampa D’Hondt 319,53  Amount still available: 12988,09 EUR  Organisation of this meeting -????,?? EUR  Barcelona evolution workshop -????,?? EUR

6 FWO-WOG, September 2002, Vienna © Tom Mens, Vrije Universiteit Brussel 6 Detail of finances for 2002  Conference and workshop fees, travel and accomodation expenses  WOG network meeting 18/1/ ,46 EUR  food and drink and room316,80  Tom Mens9,30  Mehdi Jazayeri902,14  Raymond Boute11,00  Michel Wermelinger377,80  Reiko Heckel189,90  Gall & Jazayeri1021,63  Serge Demeyer10,16  Michele Lanza433,42  Stephane Ducasse474,31  ECOOP Workshop USE457,50 EUR  Tom Mens (ws registration)250  Tom Mens (travel costs)207,50  IWPSE ,48 EUR  Michel Wermelinger450,48  SEKE ,00 EUR  Kim Mens1008,00

7 FWO-WOG, September 2002, Vienna © Tom Mens, Vrije Universiteit Brussel 7 Detail of finances for 2002  Research visits1274,33 EUR  Serge Demeyer (Dec. 2001, Bern)486,00  Serge Demeyer (May 2002, Bern)313,58  Tom Mens (Paderborn)474,75  Lunches118,40 EUR  T Mens, K Mens, M Wermelinger118,40  Special issue JSME 66,86 EUR  DHL11, ,26

8 FWO-WOG, September 2002, Vienna © Tom Mens, Vrije Universiteit Brussel 8 Publications in 2002  Conferences and workshops  Conferences  T. Mens, S. Demeyer, D. Janssens. Formalising Behaviour Preserving Program Transformations. Proc. ICGT 2002  K. Mens, T. Mens, M. Wermelinger. Maintaining software through intentional source-code views. SEKE 2002  Workshops  T. Mens, M. Lanza. A Graph-Based Metamodel for Object-Oriented Software Metrics, GraBaTS workshop, ENTCS 72(2), 2002  G. Arevalo, T. Mens. Analysing Object-Oriented Application Frameworks Using Concept Analysis. MASPEGHI workshop, LNCS, September 2002  G. Arevalo, T. Mens. Analysing Object Oriented Framework Reuse using Concept Analysis. ECOOP 2002 Inheritance workshop, June 2002  K. Mens, T. Mens, M. Wermelinger. Supporting software evolution with Intentional Software Views. IWPSE 2002, pp , ACM Press, May 2002

9 FWO-WOG, September 2002, Vienna © Tom Mens, Vrije Universiteit Brussel 9 Publications in 2002  Books, journals and dissertations  Journals  T. Mens, M. Wermelinger. Separation of concerns for software evolution. Special issue of JSME Journal  Dissertations  T. Tourwe. Automated Support for Framework-Based Software Evolution. PhD Thesis, Vrije Universiteit Brussel, September 2002  T. Richner. Recovering Behavioral Design Views: a Query-based Approach. PhD Thesis, University of Bern, May 2002  Books  S. Demeyer, S. Ducasse, O. Nierstrasz. Object-Oriented Reengineering Patterns. Morgan Kaufmann, 2002

10 Overview of ESF RELEASE by Serge Demeyer

11 FWO-WOG, September 2002, Vienna © Tom Mens, Vrije Universiteit Brussel 11 ESF RELEASE VUBUA UCLRUG KUL UL-PT UB-CHTUV-AT UPB-DE TUD-DE In Belgium Abroad FWO-WOG Title: Formal foundations of software evolution Funding: FWO Flanders Duration: 1/1/2001 – 31/12/2005 Funding: EUR SU-ITSER-NL IC-UKLSR-FR ESF-RELEASE Title: Research links to explore and advance software evolution Funding: European Science Foundation Duration: 1/7/2002 – 31/12/2005 Funding: EUR

12 FWO-WOG, September 2002, Vienna © Tom Mens, Vrije Universiteit Brussel 12 ESF RELEASE  Proposed network activities  Establish a sound scientific research method  (Lehman and Ramil activity coordinators)  Set up evolution benchmarks  (Serge Demeyer activity coordinator)

13 FWO-WOG, September 2002, Vienna © Tom Mens, Vrije Universiteit Brussel 13 ESF RELEASE  Network convenors  Tom Mens (VUB-BE)  Serge Demeyer (UA-BE)  Coordination committee  Giulio Antoniol (SU-IT)  Jan Bosch (SER-NL)  Michel Wermelinger (UL-PT)  Stéphane Ducasse (UB-CH)  Harald Gall (TUV-A)  Gregor Engels (UPB-DE)  Meir M. Lehman (IC-UK)  Jacky Estublier (LSR-FR)

14 FWO-WOG, September 2002, Vienna © Tom Mens, Vrije Universiteit Brussel 14 ESF RELEASE  Official observers  Theo D’Hondt (VUB-BE)  José Luiz Fiadeiro (UL-PT)  Oscar Nierstrasz (UB-CH)  Mehdi Jazayeri (TUV-A)  Reiko Heckel (UPB-DE)  Jean-Marie Favre (LSR-FR)  Juan F. Ramil (OU-UK)  Advisors  Kim Mens, Axel van Lamsweerde (UCL-BE)  Chris Verhoef (UA-NL)  Keith Bennett (UD-UK)  Malcolm P. Atkinson (UG-UK)  Stephen Cook, Rachel Harrison (UR-UK)  Reidar Conradi (UST-NO)  Dag Sjøberg (UO-NO)

15 FWO-WOG, September 2002, Vienna © Tom Mens, Vrije Universiteit Brussel 15 ESF RELEASE  Distribution of responsibilities  Network convenor  Treasurer  Website and mailing list manager  Report manager  Workshop coordinator  Meeting coordinator  Activity coordinators

16 Evolution Taxonomy by Tom Mens in collaboration with Jim Buckley, Awais Rashid, Matthias Zenger

17 FWO-WOG, September 2002, Vienna © Tom Mens, Vrije Universiteit Brussel 17 Evolution Taxonomy  Taxonomy of software evolution based on mechanisms of change and factors that impact upon these mechanisms  (ECOOP USE 2002 working group)  Six “dimensions” of properties  Temporal properties (when?)  Change properties (what?)  Drivers of change (who?)  Object of change (where?)  Change process (how?)  System properties

18 FWO-WOG, September 2002, Vienna © Tom Mens, Vrije Universiteit Brussel 18 Evolution Taxonomy  Related work: categorising the “why” of software evolution  based on the “purpose” of software changes  Lientz&Swanson 1980  perfective / adaptive / corrective maintenance  Chapin et al  evidence-based classification of 12 types of software evolution  evaluative, consultive, training, updative, reformative, adaptive, performance, preventive, groomative, enhancive, corrective, reductive

19 FWO-WOG, September 2002, Vienna © Tom Mens, Vrije Universiteit Brussel 19 Evolution Taxonomy  Use the taxonomy to  Provide an overview of the domain of software evolution  Position individual software evolution tools and techniques  identify their strengths and weaknesses  Compare and combine software evolution tools and techniques  choose the best one among different alternatives  find out whether two tools are complementary or overlapping  Evaluate the use of a tool or technique in a particular evolution context

20 FWO-WOG, September 2002, Vienna © Tom Mens, Vrije Universiteit Brussel 20 Evolution Taxonomy System propertiesChange properties (what) Object of change (where) Temporal properties (when) Change process (how) Drivers of change (who) openness activeness availability type effect invasiveness safety locality time of change history change frequency artifact plancontrolmeasureverify driver automation distribution CHANGE granularity scope

21 FWO-WOG, September 2002, Vienna © Tom Mens, Vrije Universiteit Brussel 21 Evolution Taxonomy  Temporal properties  Time of change  time when a change is requested  time when the change is prepared  time when the changes becomes available for execution  time when the change is executed  Change history  Versioning  Change frequency

22 FWO-WOG, September 2002, Vienna © Tom Mens, Vrije Universiteit Brussel 22 Evolution Taxonomy  Temporal properties  Change history  sequential / parallel versions  synchronous / asynchronous  divergent / convergent changes (merging)  invasive (destructive) / non-invasive changes

23 FWO-WOG, September 2002, Vienna © Tom Mens, Vrije Universiteit Brussel 23 Evolution Taxonomy  Drivers of change  Distribution  local / distributed  Degree of automation  automatic / interactive / manual  Role  person requesting the change  person making the change  person evaluating the change  manager approving the change

24 FWO-WOG, September 2002, Vienna © Tom Mens, Vrije Universiteit Brussel 24 Evolution Taxonomy  Change properties  Type of change  structural versus semantic changes  Effect of change  addition / subtraction / modification  Safety  type safety  backward compatibility safety  semantic safety (impossible)  Invasiveness

25 FWO-WOG, September 2002, Vienna © Tom Mens, Vrije Universiteit Brussel 25 Evolution Taxonomy  Object of change  Artifact being changed  documents, requirements specification, analysis and design models, source code, tests, binaries, executables, architectures, …  Granularity  from very coarse to very fine granularity  Locality of change  local/propagated/global  Scope of change  to different kinds of artifacts?

26 FWO-WOG, September 2002, Vienna © Tom Mens, Vrije Universiteit Brussel 26 Evolution Taxonomy  System properties  Activeness  Passive = changes are driven externally  Active = system drives the changes itself (e.g. by monitoring events)  e.g. dynamic reconfiguration  Openness  Open system = explicit provisions are built in the software to make it easier to evolve  e.g. framework, plug-ins, templates, reflection  Availability  system must keep running under all circumstances

27 FWO-WOG, September 2002, Vienna © Tom Mens, Vrije Universiteit Brussel 27 Evolution Taxonomy  Change process  Plan  e.g. using change request forms  Control  e.g. with or without versioning; extreme programming  Measure  e.g. impact analysis, effort estimation, evolution metrics, estimating the size of a change, …  Verify

28 FWO-WOG, September 2002, Vienna © Tom Mens, Vrije Universiteit Brussel 28 Evolution Taxonomy  Validation: Apply the taxonomy to a number of tools  Refactoring Browser, CVS, eLiza, …

29 FWO-WOG, September 2002, Vienna © Tom Mens, Vrije Universiteit Brussel 29 Evolution Taxonomy RefactoringBrowserCVSeLiza temporal properties time of change change historyirrelevantparallel asynchronoussequential change frequencyarbitrary drivers of change distributionlocaldistributed automationsemi-automaticfully automated role change properties type of changestructuralanysemantic effect of change safetystatic: more or lessno? invasiveness

30 FWO-WOG, September 2002, Vienna © Tom Mens, Vrije Universiteit Brussel 30 Evolution Taxonomy RefactoringBrowserCVSeLiza object of change artifactsource codefileexecutable code granularityseveral classes / methodsfile localitylocal changes with low impact scope system properties activenesspassive active opennesssource available / reflection open source / add ons / plug ins no availability change process planirrelevant yes controlirrelevant yes measure verify

31 FWO-WOG, September 2002, Vienna © Tom Mens, Vrije Universiteit Brussel 31 Evolution Taxonomy  Apply the taxonomy to the WOG-Evol network  Techniques  Graph rewriting for refactoring (VUB, UA)  Architectural reconfiguration (Lisbon)  Coordination contracts (Lisbon)  Model transformations (Paderborn)  …  Tools  CodEvolver (Bern)  Soul  DupLoc (Bern)  Café (Vienna)  …

32 FWO-WOG, September 2002, Vienna © Tom Mens, Vrije Universiteit Brussel 32 Evolution Taxonomy temporal properties time of change change history change frequency drivers of change distribution automation role change properties type of change effect of change safety invasiveness

33 FWO-WOG, September 2002, Vienna © Tom Mens, Vrije Universiteit Brussel 33 Evolution Taxonomy object of change artifact granularity locality scope system properties activeness openness availability change process plan control measure verify

34 Q&A Software Evolution by Tom Tourwe

35 FWO-WOG, September 2002, Vienna © Tom Mens, Vrije Universiteit Brussel 35 Q&A Software Evolution  General questions 1. What is software evolution (SE)? 2. Can you provide a taxonomy/classification of SE? 3. What are the most important problems in SE that need to be addressed? 1. From a practical/industrial point of view 2. From a research point of view

36 FWO-WOG, September 2002, Vienna © Tom Mens, Vrije Universiteit Brussel 36 Q&A Software Evolution  Research questions 1. Which of the important SE problems do you (intend to) address? 1. In your past research 2. In your current research 3. In your future research 2. Which approaches do you take to tackle these problems? 3. How do you (intend to) validate your approach(es) in practice? 4. If you intend to validate your approach(es) on a concrete software system, what are the specific characteristics that you require of this software system?

37 FWO-WOG, September 2002, Vienna © Tom Mens, Vrije Universiteit Brussel 37 Q&A Software Evolution  Contributions by  Serge Demeyer, Luuk Groenewegen, Mehdi Jazayeri, Kim Mens, Tom Mens, Tobias Rotsche, Tom Tourwe

38 FWO-WOG, September 2002, Vienna © Tom Mens, Vrije Universiteit Brussel 38 Definition of Software Evolution  The way a software system reacts to changing requirements  Software evolution occurs when software artefacts change  Implementation, but other artefacts as well  Software evolution refers to the sequence of changes that software goes through from its first release until its retirement  Software evolution is the systematic process of extending and adapting systems, without starting from scratch  The realized history of the software system during its lifetime

39 FWO-WOG, September 2002, Vienna © Tom Mens, Vrije Universiteit Brussel 39 Summary  Effect (result) vs. action (how)  Evolution vs. maintenance  Change of requirements vs. any kind of change  Evolution after first release vs. starting from scratch

40 FWO-WOG, September 2002, Vienna © Tom Mens, Vrije Universiteit Brussel 40 Taxonomy of Software Evolution  Anticipated vs. unanticipated  Version controlled or not  Planned vs. unplanned  Controlled vs. uncontrolled  Manual vs. supported  E.g. by means of refactoring  What is being changed?  Requirements, design, implementation,..  Type of change  Perfective, adaptive, corrective,..

41 FWO-WOG, September 2002, Vienna © Tom Mens, Vrije Universiteit Brussel 41 Taxonomy of Software Evolution  Granularity of changes  Systems, subsystems, classes, methods, statements,..  Change process  Sequential changes, parallel changes,..  Dynamic (runtime) vs. static evolution  Short vs. long period

42 FWO-WOG, September 2002, Vienna © Tom Mens, Vrije Universiteit Brussel 42 Industrial Problems  Change & Impact analysis  Effort & cost estimation  Change propagation  Conflict detection  Merge conflicts,..  Re(verse) Engineering  Software aging  When does software degrade?  Why does(n’t) it degrade?  How can we take countermeasures?

43 FWO-WOG, September 2002, Vienna © Tom Mens, Vrije Universiteit Brussel 43 Industrial Problems  Software development/evolution processes  Impact of software development process on evolution  Organize and structure evolution process  Tool support for all of the above  Effect of training, experience, education, etc.  How to measure this?  How to teach?

44 FWO-WOG, September 2002, Vienna © Tom Mens, Vrije Universiteit Brussel 44 Research Problems  Software evolution methodology  Techniques and tools to understand, explain & discipline software evolution processes  Research methodology  Techniques to evaluate and measure software evolution techniques & processes  Conformance checking  of design & implementation, implementation & documentation  Co-evolution  How to keep architecture, design, implementation,.. in sync

45 FWO-WOG, September 2002, Vienna © Tom Mens, Vrije Universiteit Brussel 45 Research Problems  How to measure software evolution in industry?  Effect of technology on software evolution?  E.g. programming language, environment,..  How to measure this effect?  How to improve existing technologies?  Use of formalisms  To address software evolution  To enable tool support for evolution

46 FWO-WOG, September 2002, Vienna © Tom Mens, Vrije Universiteit Brussel 46 Current Research Topics  Re(verse) engineering (of software architectures)  Refactoring  Use of formalisms  Identifying refactorings that have been or should be applied  Conformance checking  Avoiding architectural decay  Co-evolution

47 FWO-WOG, September 2002, Vienna © Tom Mens, Vrije Universiteit Brussel 47 Current Research Topics  Use of measurements (metrics)  for software evolution  to identify refactorings that have been applied  Analyzing evolution  To predict future evolution  To support software merging & upgrading

48 FWO-WOG, September 2002, Vienna © Tom Mens, Vrije Universiteit Brussel 48 Approaches taken  Prototype tools  based on metamodels, formalisms,..  Exploring mathematical formalisms  E.g. graph rewriting, metrics,..  Visualization techniques

49 FWO-WOG, September 2002, Vienna © Tom Mens, Vrije Universiteit Brussel 49 Validation  Case studies  Small vs. large scale

50 FWO-WOG, September 2002, Vienna © Tom Mens, Vrije Universiteit Brussel 50 Requirements for Validation  Large scale  Different versions of the source code  Smalltalk, Java, C++, …  Version controlled  Well-documented  Artefacts  Design models, architectural views, …  Version controlled if possible  Evolution  Changes, transformations, …

51 Future activities by Tom Mens

52 FWO-WOG, September 2002, Vienna © Tom Mens, Vrije Universiteit Brussel 52 Forthcoming workshops 2002  October 7-12: ICGT 2002 workshops (Barcelona, Spain)  Graph-based tools (7-8 october)  organised by Andy Schurr, Tom Mens, Gabriele Taentzer  Software evolution through transformations (11-12 october)  organised by Reiko Heckel, Tom Mens, Michel Wermelinger

53 FWO-WOG, September 2002, Vienna © Tom Mens, Vrije Universiteit Brussel 53 Workshops 2003  ETAPS 2003  Unanticipated Software Evolution  5-6 April 2003, Warsaw, Poland  ECOOP 2003  July 21-25, Darmstadt, Germany  proposed workshop about Refactoring  ESEC 2003  1-5 September 2003, Helsinki, Finland  IWPSE 2003: Int. Workshop on Principles of Software Evolution, 1-2 Sept.  ICSM 2003 (“The architecture of existing systems”)  September 2003, Amsterdam, The Netherlands  Sept. 23: workshop on “Evolution of Large-Scale Industrial Software Applications”

54 FWO-WOG, September 2002, Vienna © Tom Mens, Vrije Universiteit Brussel 54 Network Meetings 2003  First ESF-RELEASE meeting  Date?  Location?  Next WOG-Evol meeting  Date?  Location?  NoE-ELISA coordination meeting  Date?  Location?  Official EU meeting in Brussels November 2002  Refactoring Event  Date? Somewhere in 2003  Location: Antwerp

55 FWO-WOG, September 2002, Vienna © Tom Mens, Vrije Universiteit Brussel 55 Research visits 2003  1 person from Bern to Brussels  1 person from Bern to Antwerp  2 persons from Brussels to Bern  3 persons from Brussels to Vienna  2 persons from Antwerp to Paderborn  1 person from Leiden to Antwerp

56 Wrap-up by Mehdi Jazayeri


Download ppt "1 FWO Research Network Foundations of Software Evolution Research Meeting Friday, September 20, 2002 Technical University of Vienna Vienna, Austria."

Similar presentations


Ads by Google