Model-based Analysis of Source Code Repositories
|
|
- Morgan Harris
- 5 years ago
- Views:
Transcription
1 odel-based Analysis of Source Code Repositories arkus Scheidgen artin Schmidt Joachim Fischer Humboldt Universität zu Berlin 1
2 Agenda Software Evolution, Reverse Engineering, and ining Software Repositories odel-based ining of Software Repositories srcrepo a framework for model-bases analysis of software repositories Experiments with Eclipse s software repositories Conclusions 2
3 software engineering Software Evolution software maintenance software modernization transformation requirements user {C} S problem user {C} R HEAD S reverse engineering {C} S S {C} forward engineering mining software repositories 1 R 0 quality assessment implicit dependencies OG s AD (Achitecture-Driven odernization) AST eta-odel (AST) Knowledge Discovery eta- odel (KD) Software etrics eta-odel (S) 1. H. Kagdi,.L. Collard, J.I. aletic: A survey and taxonomy of approaches for mining software repositories in the context of software evolution; Journal of Software aintenance and Evolution: Research and Practice; Vol.19/Nr.2/2007 3
4 ining Software Repositories In General The term mining software repositories (SR) has been coined to describe a broad class of investigations into the examination of software repositories. The premise of SR is that empirical and systematic investigations of repositories will shed new light on the process of software evolution. [1] Different scopes, e.g. single software projects vs. many software projects Different goals, e.g. quality assessments and implicit dependencies vs. generalizations about software evolution 1. H. Kagdi,.L. Collard, J.I. aletic: A survey and taxonomy of approaches for mining software repositories in the context of software evolution; Journal of Software aintenance and Evolution: Research and Practice; Vol.19/Nr.2/2007 4
5 odel-based ining of Software Repositories S {C} reverse engineering 1. E.J. Chikofsky, J.H. Cross: Reverse engineering and design recovery: A taxonomy; IEEE Software; Vol.7/Nr.1/ R. Lincke, J. Lundberg, W. Löwe: Comparing Software etrics Tools; 8th International Symp. on Software Testing and Analysis;
6 odel-based ining of Software Repositories S {C} reverse engineering R HEAD {C n } R 0 1. E.J. Chikofsky, J.H. Cross: Reverse engineering and design recovery: A taxonomy; IEEE Software; Vol.7/Nr.1/ R. Lincke, J. Lundberg, W. Löwe: Comparing Software etrics Tools; 8th International Symp. on Software Testing and Analysis;
7 odel-based ining of Software Repositories S {C} reverse engineering R HEAD {C n } {C R 0 n-1 } 1. E.J. Chikofsky, J.H. Cross: Reverse engineering and design recovery: A taxonomy; IEEE Software; Vol.7/Nr.1/ R. Lincke, J. Lundberg, W. Löwe: Comparing Software etrics Tools; 8th International Symp. on Software Testing and Analysis;
8 odel-based ining of Software Repositories S {C} reverse engineering R HEAD {C n } {C R 0 n-1 } {C 0 } 1. E.J. Chikofsky, J.H. Cross: Reverse engineering and design recovery: A taxonomy; IEEE Software; Vol.7/Nr.1/ R. Lincke, J. Lundberg, W. Löwe: Comparing Software etrics Tools; 8th International Symp. on Software Testing and Analysis;
9 odel-based ining of Software Repositories S {C} reverse engineering R HEAD {C n } {C R 0 n-1 } {C 0 } 1. E.J. Chikofsky, J.H. Cross: Reverse engineering and design recovery: A taxonomy; IEEE Software; Vol.7/Nr.1/ R. Lincke, J. Lundberg, W. Löwe: Comparing Software etrics Tools; 8th International Symp. on Software Testing and Analysis;
10 odel-based ining of Software Repositories Scope depends on concreter SR-application and its goals number of software projects: single repositories, large repositories, ultra-large repositories Sources as text and text based metrics, e.g. LOC Declarations only: packages, classes, methods, but no statements, expressions, etc. Full AST with or without cross-references 6
11 odel-based ining of Software Repositories Scope depends on concreter SR-application and its goals number of software projects: single repositories, large repositories, ultra-large repositories Sources as text and text based metrics, e.g. LOC Declarations only: packages, classes, methods, but no statements, expressions, etc. Full AST with or without cross-references 7
12 odel-based ining of Software Repositories SR tools are already model-based, but in a proprietary manner Idea: existing reverse engineering framework and corresponding standard meta-models and modeling frameworks instead of proprietary solutions Goals deal with heterogeneity (different version control systems, different languages) reuse of existing meta-models, transformations, and languages interoperability with existing analysis tools retaining meaningful scalability 8
13 odel-based SR Strategies version control system - -B 3 9
14 odel-based SR Strategies Checkout(r) version control system - -B 3 9
15 odel-based SR Strategies Checkout(r) version control system - -B 3 9
16 odel-based SR Strategies B 3 Checkout(r) version control system - -B 3 9
17 odel-based SR Strategies B 3 d2cus(r) Checkout(r) version control system - -B 3 9
18 odel-based SR Strategies B 3 d2cus(r) Checkout(r) version control system - -B 3 9
19 odel-based SR Strategies B 3 d2cus(r) Checkout(r) version control system - -B 3 9
20 odel-based SR Strategies B 3 d2cus(r) Analysis(r) 1 Checkout(r) version control system - -B 3 9
21 odel-based SR Strategies B 3 d2cus(r) Analysis(r) 2 1 Checkout(r) version control system - -B 3 9
22 odel-based SR Strategies B 3 3 d2cus(r) Analysis(r) 2 1 Checkout(r) version control system - -B 3 9
23 odel-based SR Strategies B 3 3 d2cus(r) Analysis(r) 2 1 Checkout(r) version control system - -B 3 R Checkout + CUs Parse + Analysis!! 9
24 odel-based SR Strategies B 3 3 d2cus(r) Analysis(r) 2 1 Checkout(r) version control system - -B 3 10
25 odel-based SR Strategies B 3 3 d2cus(r) Analysis(r) 2 1 Checkout(r) d2 CUs(r) f B.f -B 3 version control system - B.f f 10
26 odel-based SR Strategies B 3 3 d2cus(r) Analysis(r) 2 1 Checkout(r) d2 CUs(r) B.f f erge(r) -B 3 version control system - B.f f 10
27 odel-based SR Strategies B 3 3 d2cus(r) Analysis(r) 2 1 Checkout(r) d2 CUs(r) B.f f erge(r) -B 3 version control system - R B.f f Checkout +! Parse + Analysis CUs Checkout +! + erge)+analysis CUs(Parse R 10!
28 odel-based SR Strategies B 3 3 d2cus(r) Analysis(r) 2 1 Checkout(r) d2 CUs(r) B.f f erge(r) -B 3 version control system - B.f f 11
29 odel-based SR Strategies B 3 3 d2cus(r) Analysis(r) 2 1 Checkout(r) d2 CUs(r) B.f f erge(r) -B 3 version control system - Save(r) B.f f Load(r) 11
30 R R R B 3 CUs odel-based SR Strategies Checkout + CUs Parse + Analysis Checkout + CUs(Parse + erge)+analysis (Load + erge)+analysis 0 d2cus(r)!!! Analysis(r) Checkout(r) d2 CUs(r) B.f f erge(r) -B 3 version control system - Save(r) B.f f Load(r) 11
31 R R R B 3 CUs odel-based SR Strategies Checkout + CUs Parse + Analysis Checkout + CUs(Parse + erge)+analysis (Load + erge)+analysis 0 d2cus(r)!!! Analysis(r) Checkout(r) d2 CUs(r) B.f f erge(r) version control system - -B 3 Save(r) B.f f Load(r) Analysis 0 (r) 12
32 R R R R B 3 B CUs 1 odel-based SR Strategies Checkout + CUs Parse + Analysis Checkout + CUs(Parse + erge)+analysis! (Load + erge)+analysis CUs (Load + Analysis 0 ) d2cus(r)!! Analysis(r) Checkout(r) d2 CUs(r) B.f f erge(r) version control system - -B 3 Save(r) B.f f Load(r) Analysis 0 (r) 12
33 odel-based SR Strategies B 3 3 d2cus(r) Analysis(r) 2 1 Checkout(r) d2 CUs(r) B.f f erge(r) version control system - -B 3 Save(r) B.f f Load(r) Analysis 0 (r) 13
34 Research Questions Assumptions Development of SR-applications based on models, transformation languages and standardized meta-models is favorable Some SR-applications need to analyze source code on a deep (AST) level SR-analysis is performed iteratively Hypotheses odels of source code repositories can be created and persisted Traversing existing persistent models of source code repositories is much faster than traversing transient models that are created from version control system on the fly 14
35 srcrepo A Framework for odel-based SR Eclipse s odisco as reverse engineering framework reverse engineering for Java, based on EF Support for many JRE-ased languages: Java, xtext, JSP, L creates instances of a Java EF meta-model that corresponds to the handwritten JDT AST-model provides transformation to language independent artifacts, e.g. KD EF-Fragments 1 to store very large-models uses No-SQL databases and stores larger model fragments within database entries in contrast to object-by-object stores such as OR-based CDO or No-SQL-based orsa or Neo4J tend programming with higher order functions to mimic OCL-style definition of software metrics 2 1..Scheidgen, A.Zubow,J.Fischer,T.H.Kolbe: Automated and Transparent odel Fragmentation for Persisting Large odels; AC/IEEE 15th International Conference on odel Driven Engineering Languages & Systems (ODELS); Innsbruck; Scheidgen, J.Fischer: odel-based ining of Software Repositories; 8th Systems and odeling Conference, Valencia, Spain, September 29th,
36 OCL to Calculate etrics of AST-odels // Weighted number of methods per class. def wmc(abstracttypedeclaration type,(block) int weight) { } type.bodydeclarations.sum[if (body!= null) weight.apply(it.body) else 1] 16
37 Experiments Eclipse Foundation sources, i.e. Eclipse platform and plugins (large scale software repository) Organized in different (couple hundred) projects: jdt, cdt, emf,... Available via GITHub GIT repositories can be gathered automated via GITHub s REST-ful API 200 largest Eclipse repositories that actually contained Java code: 6.6 GB Git, 400 LOC, 250 GB model with 4 billion objects. 17
38 Example Plot: Halstead-length for each Revision; Eclipse CDT WC with Halstead length (x 10 6 ) time (years)
39 odel Create v Analysis Times time (hours) udf merge/increment load save parse checkout avg time per revision (ms) jdt.ui xtext eclipselink jdt.core swt cdt ocl ptp org.aspectj cdo checkout parse save load merge/ increment udf 19
40 Diskspace GIT repository vs model size 15 GIT size odel size 10 jdt.core cdt jdt.ui cdo in GB 5 0 f.emfstore.core 20 emf jdt.debug emf.compare emf.texo.diffmerge.core
41 Delta-Compression 1 Named element matching eta-class matching Line matching delta-models initial revisions uncompressed detla-models initial revisions uncompressed delta-lines initial revisions uncompressed GB GB Lines cdt webtools gmf tooling rap jdt.core cdt webtools gmf tooling rap jdt.core cdt webtools gmf tooling rap jdt.core Compressed relative to full size Avg. execution times Avg. execution times (logarithmic) (%) avg. time per revision (ms) avg. time per revision (ms) initial revisions delta models for named elements delta models for meta-class delta lines parse compress named elements compress decompr. meta-class named elements decompr. meta-class parse compress named elements compress decompr. meta-class named elements decompr. meta-class 1..Scheidgen: Evaluation of odel Comparison for Delta-Compression in odel Persistence; BigDE 2016 (at STAF 2016),Vienna, Austria, July 6-7,
42 odel Creation v Analysis with Delta-Compression without compression with compression udf merge/increment load save parse checkout time (hours) udf merge/increment load save compress parse checkout jdt.ui xtext eclipselink jdt.core swt cdt ocl ptp jdt.ui xtext eclipselink jdt.core swt cdt ocl ptp org.aspectj cdo org.aspectj cdo time (hours)
43 Conclusions SR can support software evolution and helps to understand software evolution Traversing a source code repository to gather information (SR) is very time consuming, especially with iterative analysis It is possible to save most of this time via saving data in its model state, at the cost of comparably large models that need to be persisted The SR analysis execution time savings are considerable 23
Model-based Mining of Software Repositories. Markus Scheidgen
Model-based Mining of Software Repositories Markus Scheidgen Agenda Mining Software Repositories (MSR) and current approaches srcrepo a model-based MSR system srcrepo components and analysis process a
More informationEclipse Modeling Framework (EMF) Paweł Żalejko
Eclipse Modeling Framework (EMF) Paweł Żalejko Agenda Model-Driven Development What is EMF? EMF demo - hello world EMF demo - command stack & adapters EMF demo - data binding & validation EMF demo - generating
More informationThe etrice Eclipse Project Proposal
The etrice Eclipse Project Proposal Dipl.-Ing. Thomas Schütz, Protos Software GmbH Eclipse Embedded Day 2010, Stuttgart Agenda Motivation Scope of etrice ROOM Language Codegenerators Middleware Realization
More informationThe Galilean Moons of Eclipse
The Galilean Moons of Eclipse Wayne Beaton The Eclipse Foundation Evangelist Director, Committer Community Agenda Ganymede New and Noteworthy Components/Equinox/OSGi Demo Questions What is Galileo? Simultaneous
More informationWhen Modeling meets Productivity. Sven Efftinge - itemis
When Modeling meets Productivity Sven Efftinge - itemis I Eclipse JDT I GIT So what s the Problem? It s the Language not the Tooling! Level of Abstraction Reuse existing, proven technology and apply
More informationExtracting Executable Architecture from Legacy Code using Static Reverse Engineering. REHMAN ARSHAD The University of Manchester, UK
Extracting Executable Architecture from Legacy Code using Static Reverse Engineering REHMAN ARSHAD The University of Manchester, UK Research Context Research Product Line Engineering Reverse Engineering
More informationSANER 17. Klagenfurt, Austria
SANER 17 Klagenfurt, Austria Carol V. Alexandru, Sebastiano Panichella, Harald C. Gall Software Evolution and Architecture Lab University of Zurich, Switzerland {alexandru,panichella,gall}@ifi.uzh.ch 22.02.2017
More informationThe Next Generation of Eclipse: e4. Mike Milinkovich Executive Director Eclipse Foundation
The Next Generation of Eclipse: e4 Mike Milinkovich Executive Director Eclipse Foundation 1 Changing Environment New Technologies: RIA Applications and Cloud Computing AJAX, Flash, Silverlight Amazon E2
More informationModel-based Mining of Source Code Repositories
Model-based Mining of Source Code Repositories Markus Scheidgen and Joachim Fischer Humboldt-Universität zu Berlin, Unter den Linden 6, 10099 Berlin, Germany {scheidge,fischer}@informatik.hu-berlin.de
More informationFramework for Constructing Context- Specific Migration Methods for Test Cases
for Constructing Context- Specific s for Cases Presented by Ivan Jovanovikj All rights reserved Agenda 1 Challenges in Case Reuse in Projects 2 Construction of Context- Specific s 3 Outlook and Conclusion
More informationAn Eclipse Plug-In for Generating Database Access Documentation in Java Code
An Eclipse Plug-In for Generating Database Access Documentation in Java Code Paul L. Bergstein and Aditya Gade Dept. of Computer and Information Science, University of Massachusetts Dartmouth, Dartmouth,
More informationModel-Driven Iterative Development of 3D Web-Applications Using SSIML, X3D and JavaScript
Freiberg University of Mining and Technology The University of Resources. Since 1765. WEB3D 2012-17th International Conference on 3D Web Technology Model-Driven Iterative Development of 3D Web-Applications
More informationHow to Harvest Reusable Components in Existing Software. Nikolai Mansurov Chief Scientist & Architect
How to Harvest Reusable Components in Existing Software Nikolai Mansurov Chief Scientist & Architect Overview Introduction Reuse, Architecture and MDA Option Analysis for Reengineering (OAR) Architecture
More informationIntroduction to OpenArchitectureWare
Introduction to OpenArchitectureWare Dr. Neil Loughran Neil.Loughran@sintef.no 20 th April 2009 ICT 1 Objective To give some insights into an alternative model transformation approach i.e. OpenArchitectureWare
More informationInternational Journal for Management Science And Technology (IJMST)
Volume 4; Issue 03 Manuscript- 1 ISSN: 2320-8848 (Online) ISSN: 2321-0362 (Print) International Journal for Management Science And Technology (IJMST) GENERATION OF SOURCE CODE SUMMARY BY AUTOMATIC IDENTIFICATION
More informationNeo4EMF, a Scalable Persistence Layer for EMF Models
Neo4EMF, a Scalable Persistence Layer for EMF Models Amine Benelallam 1, Abel Gómez 1, Gerson Sunyé 1, Massimo Tisi 1, and David Launay 2 1 AtlanMod, INRIA, Mines de Nantes, & LINA, France {amine.benelallam
More informationStatic analysis and testing of executable DSL specification
Static analysis and testing of executable DSL specification Qinan Lai 1, Andy Carpenter 1 1 School of Computer Science, the University of Manchester, Manchester, UK {laiq,afc}@cs.man.ac.uk Keywords: Abstract:
More informationModel transformations. Overview of DSLE. Model transformations. Model transformations. The 4-layer architecture
Overview of DSLE Model driven software engineering g in general Grammars, signatures and meta-models DSL Design Code generation Models increase the level of abstraction used for both hardware and software
More informationComparison and merge use-cases from practice with EMF Compare
Comparison and merge use-cases from practice with EMF Compare Laurent Delaigue Philip Langer EMF Compare Working with models Comparing text files EMF Compare Working with models Comparing models EMF Compare
More informationEATOP: An EAST-ADL Tool Platform for Eclipse
Grant Agreement 260057 Model-based Analysis & Engineering of Novel Architectures for Dependable Electric Vehicles Report type Report name Deliverable D5.3.1 EATOP: An EAST-ADL Tool Platform for Eclipse
More informationTowards Better Understanding of Software Quality Evolution Through Commit Impact Analysis
Towards Better Understanding of Software Quality Evolution Through Commit Impact Analysis Sponsor: DASD(SE) By Mr. Pooyan Behnamghader 5 th Annual SERC Doctoral Students Forum November 7, 2017 FHI 360
More informationUsing Eclipse in MIS Research
Using Eclipse in MIS Research GENERAL REMARK ECLIPSE and ECLIPSE PLUG- INS are very useful and powerful in the context of RESEARCH and EDUCATION but are probably not suited for developing commercial tools.
More informationComputation Independent Model (CIM): Platform Independent Model (PIM): Platform Specific Model (PSM): Implementation Specific Model (ISM):
viii Preface The software industry has evolved to tackle new approaches aligned with the Internet, object-orientation, distributed components and new platforms. However, the majority of the large information
More informationWhat Every Xtext User Wished to Know Industry Experience of Implementing 80+ DSLs
What Every Xtext User Wished to Know Industry Experience of Implementing 80+ DSLs EclipseCon Europe 2016 2016-10-26 Roman Mitin Avaloq Evolution AG Allmendstrasse 140 8027 Zurich Switzerland T +41 58 316
More informationSoftware Factories Application within the ASE5 project
22 nd - 24 th October 2013 Software Factories Application within the ASE5 project Nieves Salor Moral (n.salor_moral@vitrocisetbelgium.com) ESTEC, Noordwijk, The Netherlands Agenda Software Factories Decision
More informationGeneration of Large Random Models for Benchmarking
Generation of Large Random Models for Benchmarking Markus Scheidgen 1 Humboldt Universität zu Berlin, Department of Computer Science, Unter den Linden 6, 10099 Berlin, Germany {scheidge}@informatik.hu-berlin.de
More informationproject in an industrial context
Anatomy of a domain-specific language project in an industrial context Development and examination of a DSL demonstrator for elevator controllers Software Engineering, Architecture and Platform Technologies
More informationIntroduction to EGF. Benoît Langlois / Thales Global Services.
www.thalesgroup.com Introduction to EGF Benoît Langlois / Thales Global Services 2 / Agenda Introduction EGF Architecture Concepts & Practice EGF Portfolios 3 / Agenda Introduction EGF Architecture Concepts
More informationIntroduction to Dependable Systems: Meta-modeling and modeldriven
Introduction to Dependable Systems: Meta-modeling and modeldriven development http://d3s.mff.cuni.cz CHARLES UNIVERSITY IN PRAGUE faculty of mathematics and physics 3 Software development Automated software
More informationLessons learned from building Eclipse-based add-ons for commercial modeling tools
Lessons learned from building Eclipse-based add-ons for commercial modeling tools (from a technology perspective) István Ráth Ákos Horváth EclipseCon France June 14 2018 MagicDraw A popular modeling tool
More informationBLU AGE 2009 Edition Agile Model Transformation
BLU AGE 2009 Edition Agile Model Transformation Model Driven Modernization for Legacy Systems 1 2009 NETFECTIVE TECHNOLOGY -ne peut être copiésans BLU AGE Agile Model Transformation Agenda Model transformation
More informationFREQUENTLY ASKED QUESTIONS
Borland Together FREQUENTLY ASKED QUESTIONS GENERAL QUESTIONS What is Borland Together? Borland Together is a visual modeling platform that enables software teams to consistently deliver on-time, high
More informationStart Up Benoît Langlois / Thales Global Services Eclipse (EMFT) EGF 2011 by Thales; made available under the EPL v1.
www.thalesgroup.com Start Up Benoît Langlois / Thales Global Services 2 / Introduction EGF Architecture Concepts & Practice EGF Portfolios 3 / Introduction EGF Architecture Concepts & Practice EGF Portfolios
More informationAnalyzing the Product Line Adequacy of Existing Components
Analyzing the Product Line Adequacy of Existing Components Jens Knodel and Dirk Muthig Fraunhofer Institute for Experimental Software Engineering (IESE), Fraunhofer-Platz 1, D-67663 Kaiserslautern, Germany
More informationA Meta-Model for Fact Extraction from Delphi Source Code
Electronic Notes in Theoretical Computer Science 94 (2004) 9 28 www.elsevier.com/locate/entcs A Meta-Model for Fact Extraction from Delphi Source Code Jens Knodel and G. Calderon-Meza 2 Fraunhofer Institute
More informationChristian Doppler Laboratory
Christian Doppler Laboratory Software Engineering Integration For Flexible Automation Systems AutomationML Models (in EMF and EA) for Modelers and Software Developers Emanuel Mätzler Institute of Software
More informationEERQI Innovative Indicators and Test Results
This project is funded by the Socioeconomic Sciences and Humanities Section. EERQI Final Conference, Brussels, 15-16 March 2011 EERQI Innovative Indicators and Test Results Prof. Dr. Stefan Gradmann /
More informationECLIPSE MODELING PROJECT
ECLIPSE MODELING PROJECT A Domain-Specific Language Toolkit Richard С. Gronback AAddison-Wesley Upper Saddle River, NJ Boston Indianapolis San Francisco New York Toronto Montreal London Munich Pans Madrid
More informationBIG MODELS AN ALTERNATIVE APPROACH
2. BIG MODELS AN ALTERNATIVE APPROACH Whitepaper Eclipse Summit 2008 Modeling Symposium Jos Warmer, Ordina (jos.warmer@ordina.nl) Abstract Scaling up modeling within project runs into many practical problems.
More informationPerfect for the Enterprise
Eike Stepper stepper@esc-net.de http://www.esc-net.de http://thegordian.blogspot.com Berlin, Germany The CDO Model Repository Perfect for the Enterprise Enterprise Modeling Day, Zurich, October 28, 2010
More informationEclipse 4 Eclipse Day Toulouse 24 mai 2012
Eclipse 4 Eclipse Day Toulouse 24 mai 2012 OPC 12 ECD PRE E4A 01 A OPCOACH 2012 Table of contents I - Eclipse 4 5 A. Application Model... 10 B. E4 injection and annotations... 14 C. CSS Styling... 17
More informationEnabling PHP Software Engineering Research in Rascal
Enabling PHP Software Engineering Research in Rascal Mark Hills and Paul Klint WASDeTT July 1, 2013 Montpellier, France http://www.rascal-mpl.org Why look at PHP applications? 2 Why look at PHP applications?
More informationIntroduction to MDE and Model Transformation
Vlad Acretoaie Department of Applied Mathematics and Computer Science Technical University of Denmark rvac@dtu.dk DTU Course 02291 System Integration Vlad Acretoaie Department of Applied Mathematics and
More informationContinuous Integration and Deployment (CI/CD)
WHITEPAPER OCT 2015 Table of contents Chapter 1. Introduction... 3 Chapter 2. Continuous Integration... 4 Chapter 3. Continuous Deployment... 6 2 Chapter 1: Introduction Apcera Support Team October 2015
More informationFrom a lot of Boxes to a lot of Words
From a lot of Boxes to a lot of Words Migrating to Xtext Jochen Schmich, Fiducia & GAD IT AG / Hendrik Bünder itemis AG Ludwigsburg, 26.10.2017 Agenda 1. Introduction 2. Our Goals 3. How to get there 4.
More informationDomain-Specific Languages Language Workbenches
Software Engineering with and Domain-Specific Languages Language Workbenches Peter Friese Itemis peter.friese@itemis.de Markus Voelter Independent/itemis voelter@acm.org 1 Programming Languages C# Erlang
More informationTransformational Abstraction for Java (TAJ)
Transformational Abstraction for Java (TAJ) Advisor: Student: Dr. Spencer Rugaber Sergio Berzosa González Motivation A major problem in software maintenance and reverse engineering is the lack of documentation
More informationEmploying Query Technologies for Crosscutting Concern Comprehension
Employing Query Technologies for Crosscutting Concern Comprehension Marius Marin Accenture The Netherlands Marius.Marin@accenture.com Abstract Common techniques for improving comprehensibility of software
More informationDIGIT.B4 Big Data PoC
DIGIT.B4 Big Data PoC DIGIT 01 Social Media D02.01 PoC Requirements Table of contents 1 Introduction... 5 1.1 Context... 5 1.2 Objective... 5 2 Data SOURCES... 6 2.1 Data sources... 6 2.2 Data fields...
More informationTaxonomy Dimensions of Complexity Metrics
96 Int'l Conf. Software Eng. Research and Practice SERP'15 Taxonomy Dimensions of Complexity Metrics Bouchaib Falah 1, Kenneth Magel 2 1 Al Akhawayn University, Ifrane, Morocco, 2 North Dakota State University,
More informationMODEL VERSIONING IN CONTEXT OF LIVING MODELS
MODEL VERSIONING IN CONTEXT OF LIVING MODELS Waqar Mehmood and Arshad Ali Department of Computer Science, COMSATS Institute of Information Technology, Wah Campus. ABSTRACT In this paper we present an approach
More informationSchema Repository Database Evolution And Metamodeling
Schema Repository Database Evolution And Metamodeling Evolving XML schemas and documents using UML class diagrams. E Domínguez, J 31, 2005. MeDEA: A database evolution architecture with traceability 21,
More informationIntroduction to Model Driven Engineering using Eclipse. Frameworks
Introduction to Model Driven Engineering using Eclipse Model Driven Development Generator s Bruce Trask Angel Roman MDE Systems Abstraction Model Driven Development Refinement 1 Part I Agenda What is Model
More informationSoftware Language Engineering of Architectural Viewpoints
Software Language Engineering of Architectural Viewpoints Elif Demirli and Bedir Tekinerdogan Department of Computer Engineering, Bilkent University, Ankara 06800, Turkey {demirli,bedir}@cs.bilkent.edu.tr
More informationDocumenting Java Database Access with Type Annotations
Documenting Java Database Access with Type Annotations Paul L. Bergstein Dept. of Computer and Information Science, University of Massachusetts Dartmouth 285 Old Westport Rd., Dartmouth, MA 02747 pbergstein@umassd.edu
More informationTowards Generating Domain-Specific Model Editors with Complex Editing Commands
Towards Generating Domain-Specific Model Editors with Complex Editing Commands Gabriele Taentzer Technical University of Berlin Germany gabi@cs.tu-berlin.de May 10, 2006 Abstract Domain specific modeling
More informationTowards a Taxonomy of Approaches for Mining of Source Code Repositories
Towards a Taxonomy of Approaches for Mining of Source Code Repositories Huzefa Kagdi, Michael L. Collard, Jonathan I. Maletic Department of Computer Science Kent State University Kent Ohio 44242 {hkagdi,
More informationInsECTJ: A Generic Instrumentation Framework for Collecting Dynamic Information within Eclipse
InsECTJ: A Generic Instrumentation Framework for Collecting Dynamic Information within Eclipse Arjan Seesing and Alessandro Orso College of Computing Georgia Institute of Technology a.c.seesing@ewi.tudelft.nl,
More informationIntroduction to Eclipse
Introduction to Eclipse Getting started with Eclipse 05/02/2010 Prepared by Chris Panayiotou for EPL 233 1 What is Eclipse? o Eclipse is an open source project http://www.eclipse.org Consortium of companies,
More informationMining Ultra-Large-Scale Software Repositories with. Boa
Mining Ultra-Large-Scale Software Repositories with Boa Robert Dyer, Hoan Nguyen, Hridesh Rajan, and Tien Nguyen {rdyer,hoan,hridesh,tien}@iastate.edu Iowa State University The research and educational
More informationExtending the JavaScript Development Toolkit
Extending the JavaScript Development Toolkit Bradley Childs IBM Software Group childsb@us.ibm.com 3/19/2008 Agenda Overview JSDT Feature Highlights Benefit of Extending JSDT JSDT Platform What can you
More informationCompositional Model Based Software Development
Compositional Model Based Software Development Prof. Dr. Bernhard Rumpe http://www.se-rwth.de/ Seite 2 Our Working Groups and Topics Automotive / Robotics Autonomous driving Functional architecture Variability
More informationECSEL Research and Innovation actions (RIA) AMASS
ECSEL Research and Innovation actions (RIA) AMASS Architecture-driven, Multi-concern and Seamless Assurance and Certification of Cyber-Physical Systems Prototype for seamless interoperability (a) D5.4
More informationEMF Refactor: Specification and Application of Model Refactorings within the Eclipse Modeling Framework
EMF Refactor: Specification and Application of Model Refactorings within the Eclipse Modeling Framework Thorsten Arendt a, Florian Mantz b, Gabriele Taentzer a a Philipps-Universität Marburg, FB12 - Mathematics
More informationIBM WebSphere Studio Asset Analyzer, Version 5.1
Helping you quickly understand, enhance and maintain enterprise applications IBM, Version 5.1 Highlights n Provides interactive textual n Helps shorten the learning curve and graphic reports that help
More informationMining Source Code Repositories with. Boa. Robert Dyer, Hoan Nguyen, Hridesh Rajan, and Tien Nguyen
Mining Source Code Repositories with Boa Robert Dyer, Hoan Nguyen, Hridesh Rajan, and Tien Nguyen {rdyer,hoan,hridesh,tien}@iastate.edu Iowa State University The research and educational activities described
More informationRefactoring Practice: How it is and How it Should be Supported
Refactoring Practice: How it is and How it Should be Supported Zhenchang Xing and EleniStroulia Presented by: Sultan Almaghthawi 1 Outline Main Idea Related Works/Literature Alignment Overview of the Case
More informationWeb Application Development Using Spring, Hibernate and JPA
Web Application Development Using Spring, Hibernate and JPA Duration: 5 Days Price: 1,995 + VAT Course Description: This course provides a comprehensive introduction to JPA (the Java Persistence API),
More informationCollaborative Repositories in Model Driven Engineering
IEEE Copyright Notice. Juri Di Rocco, Davide Di Ruscio, Ludovico Iovino, Alfonso Pierantonio. Collaborative Repositories in Model Driven Engineering. IEEE Software. Published version are available at http://ieeexplore.ieee.org/document/7093036/references
More informationHigh performance model queries
High performance model queries and their novel applications Benedek Izsó Zoltán Szatmári István Ráth Budapest University of Technology and Economics Fault Tolerant Systems Research Group Workshop on Eclipse
More informationOracle APEX 18.1 New Features
Oracle APEX 18.1 New Features May, 2018 Safe Harbor Statement The following is intended to outline our general product direction. It is intended for information purposes only, and may not be incorporated
More informationQuantifying and Assessing the Merge of Cloned Web-Based System: An Exploratory Study
Quantifying and Assessing the Merge of Cloned Web-Based System: An Exploratory Study Jadson Santos Department of Informatics and Applied Mathematics Federal University of Rio Grande do Norte, UFRN Natal,
More informationMaking EMF Intelligent with AI
Interpreting the world on a different plane Making EMF Intelligent with AI Robert Bosch Engineering and Business Solutions 14/06/2018 Niranjan Babu.H.S Robert Bosch Engineering and Business Solutions-EMT
More informationApplication Discovery and Enterprise Metadata Repository solution Questions PRIEVIEW COPY ONLY 1-1
Application Discovery and Enterprise Metadata Repository solution Questions 1-1 Table of Contents SECTION 1 ENTERPRISE METADATA ENVIRONMENT...1-1 1.1 TECHNICAL ENVIRONMENT...1-1 1.2 METADATA CAPTURE...1-1
More informationJIVE: Dynamic Analysis for Java
JIVE: Dynamic Analysis for Java Overview, Architecture, and Implementation Demian Lessa Computer Science and Engineering State University of New York, Buffalo Dec. 01, 2010 Outline 1 Overview 2 Architecture
More informationVisualizing the evolution of software using softchange
Visualizing the evolution of software using softchange Daniel M. German, Abram Hindle and Norman Jordan Software Engineering Group Department of Computer Science University of Victoria dmgerman,abez,njordan
More informationBuilding JavaServer Faces Applications
IBM Software Group St. Louis Java User Group Tim Saunders ITS Rational Software tim.saunders@us.ibm.com 2005 IBM Corporation Agenda JSF Vision JSF Overview IBM Rational Application Developer v6.0 Build
More informationDesign Document CDT Remote Search/Index Framework. Chris Recoskie Vivian Kong Mike Kucera Jason Montojo. IBM Corporation
Design Document CDT Remote Search/Index Framework Chris Recoskie Vivian Kong Mike Kucera Jason Montojo IBM Corporation Page 1 of 26 1 Introduction 1.1 Purpose The purpose of this document is to describe
More informationExperimental Responsiveness Evaluation of Decentralized Service Discovery
Experimental Responsiveness Evaluation of Decentralized Service Discovery Andreas Dittrich and Felix Salfner Institut für Informatik, Humboldt-Universität zu Berlin {dittrich,salfner}@informatik.hu-berlin.de
More informationJetBrains TeamCity Comparison
JetBrains TeamCity Comparison TeamCity is a continuous integration and continuous delivery server developed by JetBrains. It provides out-of-the-box continuous unit testing, code quality analysis, and
More informationCHAPTER 9 DESIGN ENGINEERING. Overview
CHAPTER 9 DESIGN ENGINEERING Overview A software design is a meaningful engineering representation of some software product that is to be built. Designers must strive to acquire a repertoire of alternative
More informationPapyrus: Advent of an Open Source IME at Eclipse (Redux)
Papyrus: Advent of an Open Source IME at Eclipse (Redux) Kenn Hussey Eclipse Modeling Day, Toronto November 18, 2009 A Perfect Storm for Tools Core technologies like MOF and UML are evolving Microsoft
More informationScaling Xtext. Lieven Lemiengre
Scaling Xtext Lieven Lemiengre Sigasi IDE for Hardware Description Languages VHDL, (System)Verilog Using Xtext for 4 years Large user base (commercial, free, students) Our company goal Assist hardware
More informationD2K Support for Standard Content Repositories: Design Notes. Request For Comments
D2K Support for Standard Content Repositories: Design Notes Request For Comments Abstract This note discusses software developments to integrate D2K [1] with Tupelo [6] and other similar repositories.
More informationSystem Optimization & Migration
System Optimization & Migration Agenda 1. Overview 2. Migration Process 3. Gathering / Analyzing 4. Parsing 5. 6. Recovery 7. Result & Document 2 2011-01-17 Demonstration Overview Worldwide IT marketplace
More informationTowards A Common Build Infrastructure: Designing For Reusability
Towards A Common Build Infrastructure: Designing For Reusability Nick Boldt, Release Engineer Eclipse Modeling Project IBM Rational Software Toronto, Canada 1 Agenda History of EMFT / Modeling Project
More informationLet's Treat the Eclipse IDE More Like a Product. Productizing open source Eclipse IDEs
Let's Treat the Eclipse IDE More Like a Product Productizing open source Eclipse IDEs What is a Product? a thing produced by labor a person or thing produced by or resulting from a process an article or
More informationJBPM Course Content. Module-1 JBPM overview, Drools overview
JBPM Course Content Module-1 JBPM overview, Drools overview JBPM overview Drools overview Community projects Vs Enterprise projects Eclipse integration JBPM console JBPM components Getting started Downloads
More informationAppending Variable-Structure to Modelica Models (WIP)
Appending Variable-Structure to Modelica Models (WIP) Daniel Gomez Esperon, Alexandra Mehlhase, Thomas Karbe Technische Universität Berlin Ernst-Reuter-Platz 7, 10587 Berlin, Germany {gomezesperon, a.mehlhase,
More informationClasses and Objects. Object Orientated Analysis and Design. Benjamin Kenwright
Classes and Objects Object Orientated Analysis and Design Benjamin Kenwright Outline Review Previous Weeks Object Model, Complexity,.. What do we mean by Classes and Objects? Summary/Discussion Review
More informationADT: Eclipse development tools for ATL
ADT: Eclipse development tools for ATL Freddy Allilaire (freddy.allilaire@laposte.net) Tarik Idrissi (tarik.idrissi@laposte.net) Université de Nantes Faculté de Sciences et Techniques LINA (Laboratoire
More informationSpecification and Automated Detection of Code Smells using OCL
Specification and Automated Detection of Code Smells using OCL Tae-Woong Kim 1, Tae-Gong Kim 2 and Jai-Hyun Seu 3 School of Computer Engineering, Inje University, Obang-dong 607, Gimhae, Gyeong-Nam, Korea
More informationSmall is Beautiful Building a flexible software factory using small DSLs and Small Models
Small is Beautiful Building a flexible software factory using small DSLs and Small Models Jos Warmer Partner, Ordina jos.warmer@ordina.nl 1 Modeling Maturity Levels MML 0: No specification MML 1: Textual
More informationA model-driven approach for REST compliant services
A model-driven approach for REST compliant services University of Stuttgart Universitätsstr. 38 70569 Stuttgart Germany Florian Haupt Institute of Architecture of Application Systems florian.haupt@iaas.uni-stuttgart.de
More informationTRIREME Commander: Managing Simulink Simulations And Large Datasets In Java
TRIREME Commander: Managing Simulink Simulations And Large Datasets In Java Andrew Newell Electronic Warfare & Radar Division, Defence Science and Technology Organisation andrew.newell@dsto.defence.gov.au
More informationSequence Diagram Generation with Model Transformation Technology
, March 12-14, 2014, Hong Kong Sequence Diagram Generation with Model Transformation Technology Photchana Sawprakhon, Yachai Limpiyakorn Abstract Creating Sequence diagrams with UML tools can be incomplete,
More informationLecture 21. Regression Testing Path Spectra. EE 382V Spring 2009 Software Evolution - Instructor Miryung Kim
Lecture 21 Regression Testing Path Spectra Today s Agenda (1) Regression Test Selection Path Spectra Presentation by David (skeptic) Presentation by Sidd (advocate) Presentation by Srinivas (skeptic) Today
More informationDeliverable: D 1.2 Specification of Traceability concepts
(ITEA 2 13017) Enabling of Results from AMALTHEA and others for Transfer into Application and building Community around Deliverable: D 1.2 Specification of Traceability concepts Work Package: 1 Continuous
More informationMETADATA INTERCHANGE IN SERVICE BASED ARCHITECTURE
UDC:681.324 Review paper METADATA INTERCHANGE IN SERVICE BASED ARCHITECTURE Alma Butkovi Tomac Nagravision Kudelski group, Cheseaux / Lausanne alma.butkovictomac@nagra.com Dražen Tomac Cambridge Technology
More informationAutomatic Generation of Graph Models for Model Checking
Automatic Generation of Graph Models for Model Checking E.J. Smulders University of Twente edwin.smulders@gmail.com ABSTRACT There exist many methods to prove the correctness of applications and verify
More information