RMoD Software Remodularisation
|
|
- Ralph Daniel
- 8 years ago
- Views:
Transcription
1 RMoD Software Remodularisation Research Theme: Communicating systems COM A: Project Proposal USTL/LIFL-INRIA 9 June 2007 Stéphane Ducasse 1
2 Outline! Building on expertise! RMoD! Team! Challenges and objectives! Foundations! Application domains! Research Agenda! Collaborations and grants! International collaborations! National collaborations! International and INRIA positioning! Publications and software! Programme committees and conference organisations! Conclusion 2
3 Building on expertise! Supporting software evolution and software composition! Two axes! Reengineering software systems! Language infrastructure! More? 3
4 Reengineering Topics Metamodeling, Software metrics, Program understanding, Visualization, evolution analysis, Dcode detection, Code analysis, Refactorings... Contributions Reverse Engineering Representation Analyses Evolution Moose: an open-source extensible reengineering environment: (Lugano, Bern, Annecy, Anvers, Louvain la neuve, ULB, UTSL) Contacts Harman-Becker (3 Millions C++), Bedag (Cobol), Nokia, ABB, IMEC Transformations 4
5 Understanding Large Systems [WCRE 99, TSI 00, TSE 03] Static/Dynamic Information [ICSM 99] Feature Analysis [JSME 06] Class Understanding [OOPSLA 01,TSE 04] Package Blueprints [ICSM 07] Distribution Maps [ICSM 06] Reverse Engineering Representation Language Independent Meta Model [UML 99] An Extensible Reengineering Environment (Moose) [Models 06] Software Metrics [LMO 99, OOPSLA 00] Duplicated Code Identification [ICSM 99, ICSM 02] Group Identification [ASE 03] Test Generation [CSMR 06] Concept Identification Analyses [WCRE 06] Evolution Reengineering Patterns Version Analyses [ICSM 05] HISMO metamodel [JSME 05] Transformations Language Independent Refactorings [IWPSE 00] 5
6 Language infrastructure La perfection est atteinte, non pas lorsqu il n y a plus rien à ajouter, mais lorsqu il n y a plus rien à retirer. St-Exupery Subjects Components for field devices (Pecos IST Project) Classboxes: Modules for open-classes [OOPSLA 05] OOPAL: OOP + APL Generalizing message passing - [OOPSLA 03] Language symbiosis (Jour. Program) Encapsulation for dynamic languages [ECOOP 04, OOPSLA 04] Reusable behavior: Traits [ECOOP 03, OOPSLA 03, Toplas,..., OOPSLA 07] Impacts Traits used by Fortress (SUN Microsystems), Scala (EPFL), Perl-6, Squeak, Slate, Dr-Scheme Multiple type systems 6
7 Outline! Building on an expertise! RMoD! Team! Challenges and objectives! Foundations! Application domains! Research Agenda! Collaborations and grants! International collaborations! National collaborations! International and INRIA positioning! Publications and software! Programme committees and conference organisations! Conclusion 7
8 Team! Permanent Staff! S. Ducasse, DR2 INRIA! A. Bergel, CR2 INRIA! Post doctoral Fellows! S. Denier (Sept Projet région System@tic Qualité logicielle)! External not sure to keep@@! R. Wuyts, Pr, IMEC-KUL (under building)! W. Demeuter, Pr, VUB (under building) 8
9 Team! PhD students! M.Suen (DGA-CNRS / Security in dynamic languages)! A. Abdeen (ANR / Package Analyses)! J. Menanteau (Sept 2008 / Projet region Qualité logicielle)! Other PhD students! H. Fernandes (salarié - 30 % co-tutelle Listic Univ. Savoie)! A Razavizadeh (20 % co-tutelle Listic Univ. Savoie) 9
10 Challenges and objectives! How to help development teams to maintain and evolve their software programs?! What are the analyses?! How to identify problems?! How to display results?! How to support decisions?! What language constructs to support better composition and evolution? 10
11 Typical large scale long living systems! Large: couple thousands of classes Large: 2s per line of 1M LOC system = 3 months! Undocumented Knowledge loss Lack of structure overview (layers, cycles, core) Multi-developer Multi years 11
12 Software Evolution Laws Continuous Changes. a program that is used must be continually adapted else it becomes progressively less satisfactory Increasing Complexity. As a program is evolved its complexity increases unless work is done to maintain or reduce it. 12
13 Maintenance Cost 13
14 Maintenance is Continuous Development 18.2% Adaptive (new platforms or OS) 4.1% Other Relative Maintenance Effort Between 50% and 75% of global effort is spent on maintenance! 17.4% Corrective (fixing reported errors) 60.3% Perfective (new functionality) The bulk of the maintenance cost is due to new functionality even with better requirements, it is hard to predict new functions 14
15 Application Domains Quality and software engineering are omnipresent PSA, Airbus and MediaPost Open-source Java projects JBoss, Azureus Dynamic Web Development Pharo: for developing real-life applications Starting from Squeak (developed since 1996) 2500 Classes Monolithic Several complex domains (UI, IDE, Compilation, Audio, 3D...) 15
16 Research Agenda How to help remodularize existing software applications? How to enhance programming languages to ease future evolution and reuse of software applications? 16
17 Remodularisation Support Tools for understanding applications at large Building the macroscope Remodularisation analyses Which analysis? Key class identification Layers New ways to look at coupling Software quality and monitoring How remodularisation (coupling/layers) fits into software quality? How does the system evolve? 17
18 Language Constructs for Modular Design Traits Large application (Collection library) Reconsidering traits (state addition) Pure traits-based language Security and dynamic reflective systems Security by construction Control of reflective behavior Model of security (ACL/Capabilities) Supported by NetStyle.ch Secure hot-upgrade should probably expand with 18
19 Outline! Building on expertise! RMoD! Team! Challenges and objectives! Foundations! Application domains! Research Agenda! Collaborations and grants! International collaborations! National collaborations! International and INRIA positioning! Publications and software! Programme committees and conference organisations! Conclusion 19
20 International Collaborations ERCIM WG Software Evolution co-founder Assoc. Team Remoose Geodes, Univ. Montréal (H. Sahraoui/Y.G. Gueheneuc) Software Composition Group, Univ. Bern, Pr. O. Nierstrasz Research Groups A. Black (Oregon, USA) O. Nierstrasz (Bern, Switzerland) R. Wuyts (IMEC/KUL, Belgium) E. Tanter (Santiago, Chile) Sahraoui/Guéheneuc (Montréal, Canada) S. Krishnamurthi (Providence, USA) T. D Hondt (VUB, Belgium) 20
21 National Collaborations Regional Ecole des mines de douai (Noury Bouraqadi) LIRMM Equipe d Oc INRIA Obasco Contact with MetaWare technologies Qualixo Cast Software Projects Squale, Pôle System@atic Submitted ANR Defis (LIRMM, LIAFA, MetaWare) 21
22 International and INRIA Positing INRIA Landes (statique and model checking) Klimt (Parsing + DSL + Architecture) Gallium (ocaml) Obasco (AOP) International Reengineering A. van Deursen (model driven) R. Koschke (algorithms for identification) Geodes H. Saharoui (metrics, quality) Lore (S. Demeyer, test) Seal (H. Gall, evolution mining) Reveal (M. Lanza Visualization) SERG (S. Mancoridis, Clustering) Language Design Scala (M. Odersky EPFL) E (Milner, SUN) Mixins (...) Units (Flatt) RPM (R. Ducournau, LIRMM) Reflectivity (M. Denker, SCG) 22
23 Publications and Software Publications PhDs (5 in 2005, 3 in 2006, 2 in 2007, 1 in 2008) 2 books (27000 dls) 2 chapters 18 journal articles (TSE, Toplas, 30 articles (ECOOP, OOPSLA, ICSM, WCRE, CSMR...) Software Moose: reengineering open-source environment Squeak 3.9 release responsible Pharo: high quality open-source Smalltalk JSmall: mini Java VM 23
24 Programme commitees and conferences Conferences and Workshop Organizations LMO 2005, ESUG 05, 06, 07 (100 part), Workshop chair Tools 07, Tools 08, Dyla 07 Programme Committees International: ECOOP 05, 07, ICSM 05, 06, 07, 08, CSMR 06, 07, 08, ICPC 06, 07, 08, Models/UML 05, 06, 07, DLS 05, 06, WCRE 05, 06, ESUG 05 National: Node 05, 06, LMO 05, 06, 08, IDM 05, 06, 07, 08. JFDLA 05, 07, Cal 06. International Workshops: Design Pattern Theory and Practice 05, Program Comprehension through Dynamic Analysis (PCODA 05 06). Meta-Models. Schemas and Grammars for Reverse Engineering (ATEM 06), Mining Software Repositories (MSR'07), Semantic Technologies in System Maintenance (STSM'08), Model Co-Evolution and Consistency Management (MCCM'08), Implementation, Compilation, Optimization of Object- Oriented Languages, Programs and Systems (ICOOOLPS 2008) Self-sustaining Systems (S3-2008) 24
25 Risk Analysis On the edge of two challenging topics Small team Difficult since industry wants reengineers not reengsearchers Solutions Stepwise bootstrapping Narrowing the field: remodularisation as a focus Identify key players in France Working with collaborations 25
26 Conclusion Remodularisation as a challenge Two axes in synergy Head in the clouds Model and analyses Feet on the ground Applied to real systems Platform and solutions tested on real software 26
Stéphane Ducasse. 43 years INRIA Lille Nord Europe- LIFL/USTL - CNRS UMR8022
Stéphane Ducasse Senior Researcher (Directeur de recherche) 43 years INRIA Lille Nord Europe- LIFL/USTL - CNRS UMR8022 mailto:stephane.ducasse@inria.fr + 33 (0)3 20 43 42 56 http://stephane.ducasse.free.fr
More informationHow To Understand And Understand Smalltalk
Lessons in Software Evolution Learned by Listening to Smalltalk Oscar Nierstrasz scg.unibe.ch Research Team Adrian Lienhard Adrian Kuhn Fabrizio Perin Lukas Renggli Jorge Ressia David Roethlisberger Niko
More informationGénie Logiciel et Gestion de Projets. Evolution
Génie Logiciel et Gestion de Projets Evolution 1 Roadmap Evolution: definitions Re-engineering Legacy systems Reverse engineering Software Visualisation Re-engineering Patterns 2 Evolution: Definitions
More informationBugMaps-Granger: A Tool for Causality Analysis between Source Code Metrics and Bugs
BugMaps-Granger: A Tool for Causality Analysis between Source Code Metrics and Bugs César Couto 1,2, Pedro Pires 1, Marco Túlio Valente 1, Roberto S. Bigonha 1, Andre Hora 3, Nicolas Anquetil 3 1 Department
More informationIMPROVING JAVA SOFTWARE THROUGH PACKAGE STRUCTURE ANALYSIS
IMPROVING JAVA SOFTWARE THROUGH PACKAGE STRUCTURE ANALYSIS Edwin Hautus Compuware Europe P.O. Box 12933 The Netherlands edwin.hautus@nl.compuware.com Abstract Packages are an important mechanism to decompose
More informationSupporting Software Change in the Programming Language
Supporting Software Change in the Programming Language Oscar Nierstrasz and Marcus Denker Software Composition Group University of Bern www.iam.unibe.ch/ scg Keywords: sofware evolution, languages, traits,
More informationUsing Recovered Views to Track Architectural Evolution
Using Recovered Views to Track Architectural Evolution Tamar Richner Software Composition Group, Institut für Informatik (IAM) Universität Bern, Neubrückstrasse 10, 3012 Berne,Switzerland richner@iam.unibe.ch,
More informationCodeCrawler An Extensible and Language Independent 2D and 3D Software Visualization Tool
CodeCrawler An Extensible and Language Independent 2D and 3D Software Visualization Tool Michele Lanza Software Engineering Group Department of Informatics University of Zurich, Switzerland Stéphane Ducasse
More informationThe Class Blueprint A Visualization of the Internal Structure of Classes
The Class Blueprint A Visualization of the Internal Structure of Classes Michele Lanza Software Composition Group University Of Bern Bern, Switzerland lanza@iam.unibe.ch Stéphane Ducasse Software Composition
More informationSoftware Comprehension and Reuse supported by Analytics and Repository Mining
Software Comprehension and Reuse supported by Analytics and Repository Mining Marcelo de Almeida Maia Computer Science Department Federal University of Uberlândia marcmaia@facom.ufu.br SEIF Brazil Workshop
More informationOrionPlanning: Improving Modularization and Checking Consistency on Software Architecture
OrionPlanning: Improving Modularization and Checking Consistency on Software Architecture Gustavo Santos, Nicolas Anquetil, Anne Etien, and Stéphane Ducasse RMoD Team INRIA, Lille, France {firstname.lastname}@inria.fr
More informationExploiting Dynamic Information in IDEs Eases Software Maintenance
Exploiting Dynamic Information in IDEs Eases Software Maintenance David Röthlisberger Software Composition Group, University of Bern, Switzerland roethlis@iam.unibe.ch Abstract The integrated development
More informationJSClassFinder: A Tool to Detect Class-like Structures in JavaScript
JSClassFinder: A Tool to Detect Class-like Structures in JavaScript Leonardo Humberto Silva 1, Daniel Hovadick 2, Marco Tulio Valente 2, Alexandre Bergel 3,Nicolas Anquetil 4, Anne Etien 4 1 Department
More informationProgram Understanding in Software Engineering
Taming the complexity: The need for program understanding in software engineering Raghvinder S. Sangwan, Ph.D. Pennsylvania State University, Great Valley School of Graduate Professional Studies Robert
More informationVISUALIZATION APPROACH FOR SOFTWARE PROJECTS
Canadian Journal of Pure and Applied Sciences Vol. 9, No. 2, pp. 3431-3439, June 2015 Online ISSN: 1920-3853; Print ISSN: 1715-9997 Available online at www.cjpas.net VISUALIZATION APPROACH FOR SOFTWARE
More informationEvoSpaces: 3D Visualization of Software Architecture
EvoSpaces: 3D Visualization of Software Architecture Sazzadul Alam, Philippe Dugerdil HEG - Univ. of Applied Sciences, Geneva, Switzerland Sazzadul.Alam@hesge.ch, Philippe.Dugerdil@hesge.ch Abstract This
More informationParis, October 5 2007 ICSM 2007 Working Session. Francesca Arcelli Fontana
Paris, October 5 2007 ICSM 2007 Working Session Francesca Arcelli Fontana RE4APM RE University Industry APM Clients Reverse Engineering The process of analyzing a subject system to (i) identify the system
More informationSoftware Bugs and Evolution: A Visual Approach to Uncover Their Relationship
Software Bugs and Evolution: A Visual Approach to Uncover Their Relationship Marco D Ambros and Michele Lanza Faculty of Informatics University of Lugano, Switzerland Abstract Versioning systems such as
More informationWhite Coats: Web-Visualization of Evolving Software in 3D
White Coats: Web-Visualization of Evolving Software in 3D Cédric Mesnage Département d informatique Université de Caen, France Michele Lanza Faculty of informatics University of Lugano, Switzerland Abstract
More informationDynamic Analysis. The job of the reverse engineer is similar to the one of the doctor, as they both need to reason about an unknown complex system.
Dynamic Analysis Tudor Gîrba www.tudorgirba.com The job of the reverse engineer is similar to the one of the doctor, as they both need to reason about an unknown complex system. One way to gain insights
More informationAspect Mining in Procedural Object-Oriented Code
Aspect Mining in Procedural Object-Oriented Code Muhammad Usman BHATTI 1 Stéphane DUCASSE 2 Awais RASHID 3 1 CRI, Université de Paris 1 Sorbonne, France 2 INRIA - Lille Nord Europe, France 3 Computing
More informationAspect-Oriented Programming
Aspect-Oriented Programming An Introduction to Aspect-Oriented Programming and AspectJ Niklas Påhlsson Department of Technology University of Kalmar S 391 82 Kalmar SWEDEN Topic Report for Software Engineering
More informationBugMaps-Granger: a tool for visualizing and predicting bugs using Granger causality tests
Couto et al. Journal of Software Engineering Research and Development 2014, 2:1 SOFTWARE Open Access BugMaps-Granger: a tool for visualizing and predicting bugs using Granger causality tests Cesar Couto
More informationAnalysis and Design of Software Systems Practical Session 01. System Layering
Analysis and Design of Software Systems Practical Session 01 System Layering Outline Course Overview Course Objectives Computer Science vs. Software Engineering Layered Architectures Selected topics in
More informationGadget: A Tool for Extracting the Dynamic Structure of Java Programs
Gadget: A Tool for Extracting the Dynamic Structure of Java Programs Juan Gargiulo and Spiros Mancoridis Department of Mathematics & Computer Science Drexel University Philadelphia, PA, USA e-mail: gjgargiu,smancori
More informationRepresenting Code History with Development Environment Events
Representing Code History with Development Environment Events Martín Dias Damien Cassou Stéphane Ducasse RMoD Inria Lille Nord Europe University of Lille Lifl Abstract Modern development environments handle
More informationChapter 13 Computer Programs and Programming Languages. Discovering Computers 2012. Your Interactive Guide to the Digital World
Chapter 13 Computer Programs and Programming Languages Discovering Computers 2012 Your Interactive Guide to the Digital World Objectives Overview Differentiate between machine and assembly languages Identify
More informationAn Automatic Reversible Transformation from Composite to Visitor in Java
An Automatic Reversible Transformation from Composite to Visitor in Java Akram To cite this version: Akram. An Automatic Reversible Transformation from Composite to Visitor in Java. CIEL 2012, P. Collet,
More informationA Multi-layered Domain-specific Language for Stencil Computations
A Multi-layered Domain-specific Language for Stencil Computations Christian Schmitt, Frank Hannig, Jürgen Teich Hardware/Software Co-Design, University of Erlangen-Nuremberg Workshop ExaStencils 2014,
More informationThe OpenCloudware collaborative project
The OpenCloudware collaborative project «Delivering a Cloud Platorm for Building, Maintaining and Operating Enterprise PaaS Distributed Applications» Alban Richard, UShareSoft CEO Cedric Thomas, OW2 CEO
More informationThe OpenCloudware collaborative project
The OpenCloudware collaborative project An Infrastructure platform for Building, Maintaining and Operating Enterprise Distributed Applications in the Cloud Towards a PaaS management stack over multiple
More informationVisualizing Software Architecture Evolution using Change-sets
Visualizing Software Architecture Evolution using Change-sets Andrew McNair, Daniel M. German, and Jens Weber-Jahnke Computer Science Department University of Victoria Victoria, Canada {amcnair,dmg,jens}@cs.uvic.ca
More informationUnification of AOP and FOP in Model Driven Development
Chapter 5 Unification of AOP and FOP in Model Driven Development I n this chapter, AOP and FOP have been explored to analyze the similar and different characteristics. The main objective is to justify
More informationSoftware Engineering & Architecture
Software Engineering & Architecture 11. QUALITY METRICS AND VISUALIZATION Martin Kropp University of Applied Sciences Northwestern Switzerland Institute for Mobile and Distributed Systems References Some
More informationStrategies for Program Inspection and Visualization
Strategies for Program Inspection and Visualization Daniela da Cruz 1, Mario Béron 1, Pedro Rangel Henriques 1, and Maria João Varanda Pereira 2 1 University of Minho - Department of Computer Science,
More informationCodeCrawler Lessons Learned in Building a Software Visualization Tool
CodeCrawler Lessons Learned in Building a Software Visualization Tool Michele Lanza lanza@iam.unibe.ch - Software Composition Group - University of Berne, Switzerland Abstract Software visualization tools
More informationUsing Library Dependencies for Clustering
Using Library Dependencies for Clustering Jochen Quante Software Engineering Group, FB03 Informatik, Universität Bremen quante@informatik.uni-bremen.de Abstract: Software clustering is an established approach
More informationA Categorization of Classes based on the Visualization of their Internal Structure: the Class Blueprint
A Categorization of Classes based on the Visualization of their Internal Structure: the Class Blueprint Michele Lanza Software Composition Group University Of Bern Bern, Switzerland lanza@iam.unibe.ch
More informationJava Wiretap. Extracting Feature Execution Models for Reverse Engineering
Java Wiretap Extracting Feature Execution Models for Reverse Engineering Julien Fierz Supervised by: Orla Greevy University of Bern, Switzerland Software Composition Group June 2007 Wiretap is a profiler
More informationHow To Combine Feature-Oriented And Aspect-Oriented Programming To Support Software Evolution
Combining Feature-Oriented and Aspect-Oriented Programming to Support Software Evolution Sven Apel, Thomas Leich, Marko Rosenmüller, and Gunter Saake Department of Computer Science Otto-von-Guericke-University
More informationService Oriented Architecture and the DBA Kathy Komer Aetna Inc. New England DB2 Users Group. Tuesday June 12 1:00-2:15
Service Oriented Architecture and the DBA Kathy Komer Aetna Inc. New England DB2 Users Group Tuesday June 12 1:00-2:15 Service Oriented Architecture and the DBA What is Service Oriented Architecture (SOA)
More informationModernized and Maintainable Code. Frank Weil, Ph.D. UniqueSoft, LLC
Modernized and Maintainable Code Frank Weil, Ph.D. UniqueSoft, LLC UniqueSoft is a provider of next-generation software development tools and services specializing in modernizing legacy software using
More informationChapter 13: Program Development and Programming Languages
15 th Edition Understanding Computers Today and Tomorrow Comprehensive Chapter 13: Program Development and Programming Languages Deborah Morley Charles S. Parker Copyright 2015 Cengage Learning Learning
More informationA Framework of Model-Driven Web Application Testing
A Framework of Model-Driven Web Application Testing Nuo Li, Qin-qin Ma, Ji Wu, Mao-zhong Jin, Chao Liu Software Engineering Institute, School of Computer Science and Engineering, Beihang University, China
More informationAdaptability in Object-Oriented Software Development Workshop report
Adaptability in Object-Oriented Software Development Workshop 1 Adaptability in Object-Oriented Software Development Workshop report Bedir Tekinerdogan & Mehmet Aksit Department of Computer Science University
More informationsql-schema-comparer: Support of Multi-Language Refactoring with Relational Databases
sql-schema-comparer: Support of Multi-Language Refactoring with Relational Databases Hagen Schink Institute of Technical and Business Information Systems Otto-von-Guericke-University Magdeburg, Germany
More informationAn Aspect-Oriented Product Line Framework to Support the Development of Software Product Lines of Web Applications
An Aspect-Oriented Product Line Framework to Support the Development of Software Product Lines of Web Applications Germán Harvey Alférez Salinas Department of Computer Information Systems, Mission College,
More informationIntegration of Application Business Logic and Business Rules with DSL and AOP
Integration of Application Business Logic and Business Rules with DSL and AOP Bogumiła Hnatkowska and Krzysztof Kasprzyk Wroclaw University of Technology, Wyb. Wyspianskiego 27 50-370 Wroclaw, Poland Bogumila.Hnatkowska@pwr.wroc.pl
More informationMDA and Programming Languages
MDA and Programming Languages Michael Eichberg University of Technology Darmstadt eichberg@informatik.tu-darmstadt.de September 2002 Abstract One of the open issues in Model Driven Architecture (MDA) is
More informationToward Families of QVT DSL and Tool
Toward Families of QVT DSL and Tool Benoît Langlois, Daniel Exertier, Ghanshyamsinh Devda Thales Research & Technology RD 128 91767 Palaiseau, France {benoit.langlois, daniel.exertier, ghanshyamsinh.devda}@thalesgroup.com
More informationDecomposition into Parts. Software Engineering, Lecture 4. Data and Function Cohesion. Allocation of Functions and Data. Component Interfaces
Software Engineering, Lecture 4 Decomposition into suitable parts Cross cutting concerns Design patterns I will also give an example scenario that you are supposed to analyse and make synthesis from The
More informationCurriculum Vitae. Zhenchang Xing
Curriculum Vitae Zhenchang Xing Computing Science Department University of Alberta, Edmonton, Alberta T6G 2E8 Phone: (780) 433 0808 E-mail: xing@cs.ualberta.ca http://www.cs.ualberta.ca/~xing EDUCATION
More informationVISUALIZATION TECHNIQUES OF COMPONENTS FOR LARGE LEGACY C/C++ SOFTWARE
STUDIA UNIV. BABEŞ BOLYAI, INFORMATICA, Volume LIX, Special Issue 1, 2014 10th Joint Conference on Mathematics and Computer Science, Cluj-Napoca, May 21-25, 2014 VISUALIZATION TECHNIQUES OF COMPONENTS
More informationService Oriented Architecture 1 COMPILED BY BJ
Service Oriented Architecture 1 COMPILED BY BJ CHAPTER 9 Service Oriented architecture(soa) Defining SOA. Business value of SOA SOA characteristics. Concept of a service, Enterprise Service Bus (ESB) SOA
More informationCombining Feature-Oriented and Aspect-Oriented Programming to Support Software Evolution
Combining Feature-Oriented and Aspect-Oriented Programming to Support Software Evolution Sven Apel, Thomas Leich, Marko Rosenmüller, and Gunter Saake Department of Computer Science University of Magdeburg,
More informationGrouping in Object-Oriented Reverse Engineering
Grouping in Object-Oriented Reverse Engineering Diplomarbeit der Philosophisch-naturwissenschaftlichen Fakultät der Universität Bern vorgelegt von Daniele Talerico 2003 Leiter der Arbeit: Michele Lanza
More informationOpen Source egovernment Reference Architecture Osera.modeldriven.org. Copyright 2006 Data Access Technologies, Inc. Slide 1
Open Source egovernment Reference Architecture Osera.modeldriven.org Slide 1 Caveat OsEra and the Semantic Core is work in progress, not a ready to use capability Slide 2 OsEra What we will cover OsEra
More informationAssuring Software Quality by Code Smell Detection
Assuring Software Quality by Code Smell Detection (Invited talk, Most Influential Paper Award) Eva van Emden Vancouver Editor Vancouver, BC, Canada Email: eva@alumni.uvic.ca Leon Moonen Simula Research
More informationInsights into System Wide Code Duplication
Insights into System Wide Code Duplication Matthias Rieger, Stéphane Ducasse, and Michele Lanza Software Composition Group University of Bern, Switzerland {rieger,ducasse,lanza}@iam.unibe.ch Abstract Duplication
More informationInfrastructures for Digital Business Ecosystems : the wrong question?
Infrastructures for Digital Business Ecosystems : the wrong question? Maurizio De Cecco http://maurizio.dececco.name/ http://www.linkedin.com/in/mauriziodececco As an independent expert working for the
More informationSchool of Computer Science
School of Computer Science Computer Science - Honours Level - 2014/15 October 2014 General degree students wishing to enter 3000- level modules and non- graduating students wishing to enter 3000- level
More informationChallenges in bootstrapping a model-driven way of software development
Challenges in bootstrapping a model-driven way of software development Dennis Wagelaar Vrije Universiteit Brussel, Pleinlaan 2, 1050 Brussels, Belgium dennis.wagelaar@vub.ac.be Abstract. Current MDE technologies
More informationEvolution Feature Oriented Model Driven Product Line Engineering Approach for Synergistic and Dynamic Service Evolution in Clouds
Evolution Feature Oriented Model Driven Product Line Engineering Approach for Synergistic and Dynamic Service Evolution in Clouds Zhe Wang, Xiaodong Liu, Kevin Chalmers School of Computing Edinburgh Napier
More informationSoftware Engineering. So(ware Evolu1on
Software Engineering So(ware Evolu1on 1 Software change Software change is inevitable New requirements emerge when the software is used; The business environment changes; Errors must be repaired; New computers
More informationMaispion: A Tool for Analysing and Visualising Open Source Software Developer Communities
Maispion: A Tool for Analysing and Visualising Open Source Software Developer Communities François Stephany University of Mons & agilitic Place du Parc 20 7000 Mons, Belgium francois.stephany@agilitic.com
More informationA METHOD FOR REWRITING LEGACY SYSTEMS USING BUSINESS PROCESS MANAGEMENT TECHNOLOGY
A METHOD FOR REWRITING LEGACY SYSTEMS USING BUSINESS PROCESS MANAGEMENT TECHNOLOGY Gleison Samuel do Nascimento, Cirano Iochpe Institute of Informatics, Federal University of Rio Grande do Sul, Porto Alegre,
More informationSafe Kernel Scheduler Development with Bossa
Safe Kernel Scheduler Development with Bossa Gilles Muller Obasco Group, Ecole des Mines de Nantes/INRIA, LINA Julia L. Lawall DIKU, University of Copenhagen http://www.emn.fr/x-info/bossa 1 1 Process
More informationGenerating Aspect Code from UML Models
Generating Aspect Code from UML Models Iris Groher Siemens AG, CT SE 2 Otto-Hahn-Ring 6 81739 Munich, Germany Iris.Groher@fh-hagenberg.at Stefan Schulze Siemens AG, CT SE 2 Otto-Hahn-Ring 6 81739 Munich,
More informationManaging Software Evolution through Reuse Contracts
VRIJE UNIVERSITEIT BRUSSEL Vrije Universiteit Brussel Faculteit Wetenschappen SCI EN T I A V INCERE T ENE BRA S Managing Software Evolution through Reuse Contracts Carine Lucas, Patrick Steyaert, Kim Mens
More informationCOURSE CODE : 4072 COURSE CATEGORY : A PERIODS / WEEK : 4 PERIODS / SEMESTER : 72 CREDITS : 4
COURSE TITLE : SOFTWARE ENGINEERING COURSE CODE : 4072 COURSE CATEGORY : A PERIODS / WEEK : 4 PERIODS / SEMESTER : 72 CREDITS : 4 TIME SCHEDULE MODULE TOPICS PERIODS 1 Software engineering discipline evolution
More informationRun-time Variability Issues in Software Product Lines
Run-time Variability Issues in Software Product Lines Alexandre Bragança 1 and Ricardo J. Machado 2 1 Dep. I&D, I2S Informática Sistemas e Serviços SA, Porto, Portugal, alexandre.braganca@i2s.pt 2 Dep.
More informationUnderstanding Software Static and Dynamic Aspects
Understanding Software Static and Dynamic Aspects Welf Löwe IPD, Universität Karlsruhe PF 6980, 76128 Karlsruhe Germany loewe@ira.uka.de Andreas Ludwig IPD, Universität Karlsruhe PF 6980, 76128 Karlsruhe
More informationA Visualization Approach for Bug Reports in Software Systems
, pp. 37-46 http://dx.doi.org/10.14257/ijseia.2014.8.10.04 A Visualization Approach for Bug Reports in Software Systems Maen Hammad 1, Somia Abufakher 2 and Mustafa Hammad 3 1, 2 Department of Software
More informationProgram Understanding with Code Visualization
Program Understanding with Code Visualization Arif Iftikhar Department of Computer Science National University of Computer and Emerging Sciences 852-B Faisal Town, Lahore, Pakistan l060802@lhr.nu.edu.pk
More informationCOCOVILA Compiler-Compiler for Visual Languages
LDTA 2005 Preliminary Version COCOVILA Compiler-Compiler for Visual Languages Pavel Grigorenko, Ando Saabas and Enn Tyugu 1 Institute of Cybernetics, Tallinn University of Technology Akadeemia tee 21 12618
More informationCSC408H Lecture Notes
CSC408H Lecture Notes These lecture notes are provided for the personal use of students taking Software Engineering course in the Summer term 2005 at the University of Toronto. Copying for purposes other
More informationDevelopment of Tool Extensions with MOFLON
Development of Tool Extensions with MOFLON Ingo Weisemöller, Felix Klar, and Andy Schürr Fachgebiet Echtzeitsysteme Technische Universität Darmstadt D-64283 Darmstadt, Germany {weisemoeller klar schuerr}@es.tu-darmstadt.de
More informationA Framework for Obtaining the Ground-Truth in Architectural Recovery
A Framework for Obtaining the Ground-Truth in Architectural Recovery Joshua Garcia, Ivo Krka, and Nenad Medvidovic Computer Science Department, University of Southern California, Los Angeles, CA 90089,
More informationMigrating Legacy Software Systems to CORBA based Distributed Environments through an Automatic Wrapper Generation Technique
Migrating Legacy Software Systems to CORBA based Distributed Environments through an Automatic Wrapper Generation Technique Hyeon Soo Kim School of Comp. Eng. and Software Eng., Kum Oh National University
More informationMining a Change-Based Software Repository
Mining a Change-Based Software Repository Romain Robbes Faculty of Informatics University of Lugano, Switzerland 1 Introduction The nature of information found in software repositories determines what
More informationThe Service Revolution software engineering without programming languages
The Service Revolution software engineering without programming languages Gustavo Alonso Institute for Pervasive Computing Department of Computer Science Swiss Federal Institute of Technology (ETH Zurich)
More informationCase Studies of Running the Platform. NetBeans UML Servlet JSP GlassFish EJB
September Case Studies of Running the Platform NetBeans UML Servlet JSP GlassFish EJB In this project we display in the browser the Hello World, Everyone! message created in the session bean with servlets
More informationDoctoral Education @Aix-Marseille University 8th EUA-CDE Workshop Regional Engagement and Doctoral Education
@Aix-Marseille University 8th EUA-CDE Workshop Regional Engagement and Mossadek Talby* & Christophe Muller** Directors of the Doctoral Schools *352: Physics and Materials Science **353: Engineer Science
More informationOrganization of DSLE part. Overview of DSLE. Model driven software engineering. Engineering. Tooling. Topics:
Organization of DSLE part Domain Specific Language Engineering Tooling Eclipse plus EMF Xtext, Xtend, Xpand, QVTo and ATL Prof.dr. Mark van den Brand GLT 2010/11 Topics: Meta-modeling Model transformations
More informationHow to simplify the evolution of business process lifecycles
How to simplify the evolution of business process lifecycles Dr Alexander Samarin Independent consultant, Switzerland www.improving-bpm-systems.com samarin@bluemail.ch Abstract. My experience shows that
More informationAPI Architecture. for the Data Interoperability at OSU initiative
API Architecture for the Data Interoperability at OSU initiative Introduction Principles and Standards OSU s current approach to data interoperability consists of low level access and custom data models
More informationOVERVIEW OF JPSEARCH: A STANDARD FOR IMAGE SEARCH AND RETRIEVAL
OVERVIEW OF JPSEARCH: A STANDARD FOR IMAGE SEARCH AND RETRIEVAL Frédéric Dufaux, Michael Ansorge, and Touradj Ebrahimi Institut de Traitement des Signaux Ecole Polytechnique Fédérale de Lausanne (EPFL)
More informationParsing Technology and its role in Legacy Modernization. A Metaware White Paper
Parsing Technology and its role in Legacy Modernization A Metaware White Paper 1 INTRODUCTION In the two last decades there has been an explosion of interest in software tools that can automate key tasks
More informationINNOVATOR. The integrated tool suite for business process and software engineering
The integrated tool suite for business process and software engineering Use the synergy: The integrated tool suite for business process and software engineering is the only integrated tool suite for business
More informationManaging the Services Lifecycle SOA & BPM
Managing the Services Lifecycle SOA & BPM Agenda The service Lifecycle what does it look like? Methods and processes for service evolution Supporting tools & techniques Governing the service-cycle Best
More informationClone Detection in a Product Line Context
Clone Detection in a Product Line Context Thilo Mende, Felix Beckwermert University of Bremen, Germany {tmende,beckwermert}@informatik.uni-bremen.de Abstract: Software Product Lines (SPL) can be used to
More informationGhizlane El Boussaidi http://pages.videotron.com/ghizlane/ 3207, boul. Lévesque Est Phone : (450) 661-4397
Ghizlane El Boussaidi http://pages.videotron.com/ghizlane/ 3207, boul. Lévesque Est Phone : (450) 661-4397 Laval, Québec, Canada email : gelboussaidi@gmail.com H7E 2P4 Citizenship: Canadian EDUCATION Ph.D.
More informationComponent visualization methods for large legacy software in C/C++
Annales Mathematicae et Informaticae 44 (2015) pp. 23 33 http://ami.ektf.hu Component visualization methods for large legacy software in C/C++ Máté Cserép a, Dániel Krupp b a Eötvös Loránd University mcserep@caesar.elte.hu
More informationAn empirical study of fine-grained software modifications
An empirical study of fine-grained software modifications Daniel M. German Software Engineering Group Department of Computer Science University of Victoria Victoria, Canada dmgerman@uvic.ca Abstract Software
More informationChapter 9 Software Evolution
Chapter 9 Software Evolution Summary 1 Topics covered Evolution processes Change processes for software systems Program evolution dynamics Understanding software evolution Software maintenance Making changes
More informationComprensione del software - principi base e pratica reale 5
Prologue C era una volta Comprensione del software - principi base e pratica reale Reverse engineer 1 200 000 lines of C++ code in ca. 2300 classes * 2 = 2 400 000 seconds / 3600 = 667 hours 667 hours
More informationService-oriented architecture in e-commerce applications
Service-oriented architecture in e-commerce applications What is a Service Oriented Architecture? Depends on who you ask Web Services A technical architecture An evolution of distributed computing and
More informationBusiness-Driven Software Engineering Lecture 3 Foundations of Processes
Business-Driven Software Engineering Lecture 3 Foundations of Processes Jochen Küster jku@zurich.ibm.com Agenda Introduction and Background Process Modeling Foundations Activities and Process Models Summary
More informationModel Driven Interoperability through Semantic Annotations using SoaML and ODM
Model Driven Interoperability through Semantic Annotations using SoaML and ODM JiuCheng Xu*, ZhaoYang Bai*, Arne J.Berre*, Odd Christer Brovig** *SINTEF, Pb. 124 Blindern, NO-0314 Oslo, Norway (e-mail:
More informationWednesday, September 29, 2010. Thanks for being here!
Thanks for being here! Thanks Citilab Thanks Joan Guell (Smalltalker - Citilab) Jose Garcia (Smalltalker - Citilab) Marina Conde (Smalltalker - Citilab) Victor Casado (Smalltalker - Citilab) Maria Josep
More information