Software Engineering Laboratory, Department of Computer Science, Graduate School of Information Science and Technology, Osaka University VerXCombo: An.

Slides:



Advertisements
Similar presentations
Refining High Performance FORTRAN Code from Programming Model Dependencies Ferosh Jacob University of Alabama Department of Computer Science
Advertisements

Software Engineering Laboratory, Department of Computer Science, Graduate School of Information Science and Technology, Osaka University Identifying Source.
Software Engineering Laboratory, Department of Computer Science, Graduate School of Information Science and Technology, Osaka University Evolutional Analysis.
Software Engineering Laboratory, Department of Computer Science, Graduate School of Information Science and Technology, Osaka University On the Effectiveness.
1 Accumulative Versioning File System Moraine and Its Application to Metrics Environment Mame Tetsuo Yamamoto * Makoto Matsushita * Katsuro Inoue *,**
Background Chronopolis Goals Data Grid supporting a Long-term Preservation Service Data Migration Data Migration to next generation technologies Trust.
Software Engineering Laboratory, Department of Computer Science, Graduate School of Information Science and Technology, Osaka University Extraction of.
Sponsored by the U.S. Department of Defense © 2005 by Carnegie Mellon University 1 Pittsburgh, PA Dennis Smith, David Carney and Ed Morris DEAS.
Galia Angelova Institute for Parallel Processing, Bulgarian Academy of Sciences Visualisation and Semantic Structuring of Content (some.
Software Engineering Laboratory, Department of Computer Science, Graduate School of Information Science and Technology, Osaka University Extracting Code.
VisIt Software Engineering Infrastructure and Release Process LLNL-PRES Lawrence Livermore National Laboratory, P. O. Box 808, Livermore,
Software Engineering Laboratory, Department of Computer Science, Graduate School of Information Science and Technology, Osaka University A Prototype of.
Page 1 Building Reliable Component-based Systems Chapter 17 - Architectural Support for Reuse Chapter 17 Architectural Support for Reuse.
Formality, Agility, Security, and Evolution in Software Development Cody Ronning 2/16/2015.
Software Engineering Laboratory, Department of Computer Science, Graduate School of Information Science and Technology, Osaka University Measuring Copying.
Software Engineering Laboratory, Department of Computer Science, Graduate School of Information Science and Technology, Osaka University Industrial Application.
University of Toronto Department of Computer Science CSC444 Lec04- 1 Lecture 4: Software Lifecycles The Software Process Waterfall model Rapid Prototyping.
Software Engineering Laboratory, Department of Computer Science, Graduate School of Information Science and Technology, Osaka University ICSE 2003 Java.
Software Engineering Laboratory, Department of Computer Science, Graduate School of Information Science and Technology, Osaka University What Kinds of.
Case Base Maintenance(CBM) Fabiana Prabhakar CSE 435 November 6, 2006.
Software Engineering Laboratory, Department of Computer Science, Graduate School of Information Science and Technology, Osaka University A Criterion for.
Software Engineering Laboratory, Department of Computer Science, Graduate School of Information Science and Technology, Osaka University Investigation.
Department of Computer Science, Graduate School of Information Science & Technology, Osaka University A clone detection approach for a collection of similar.
Software Engineering Laboratory, Department of Computer Science, Graduate School of Information Science and Technology, Osaka University What Do Practitioners.
Presented by Abirami Poonkundran.  Introduction  Current Work  Current Tools  Solution  Tesseract  Tesseract Usage Scenarios  Information Flow.
Software Engineering Laboratory, Department of Computer Science, Graduate School of Information Science and Technology, Osaka University A Multi-Objective.
Department of Computer Science, Graduate School of Information Science & Technology, Osaka University A Method to Detect License Inconsistencies for Large-
Software Engineering Laboratory, Department of Computer Science, Graduate School of Information Science and Technology, Osaka University Code-Clone Analysis.
Software Engineering Laboratory, Department of Computer Science, Graduate School of Information Science and Technology, Osaka University 1 Design and Implementation.
Software Engineering Laboratory, Department of Computer Science, Graduate School of Information Science and Technology, Osaka University Applying Clone.
Software Engineering Laboratory, Department of Computer Science, Graduate School of Information Science and Technology, Osaka University How to extract.
Copyright © 2008 Nara Institute of Science and Technology / Osaka University Using Software Tag for Traceability and Transparency in Global Software Engineering.
Software Engineering Laboratory, Department of Computer Science, Graduate School of Information Technology and Science, Osaka University Dependence-Cache.
Advanced Software Development & Engineering 1 Theme Introduction.
Software Engineering Laboratory, Department of Computer Science, Graduate School of Information Science and Technology, Osaka University Development of.
Department of Computer Science, Graduate School of Information Science & Technology, Osaka University Retrieving Similar Code Fragments based on Identifier.
Software Engineering Laboratory, Department of Computer Science, Graduate School of Information Science and Technology, Osaka University Assertion with.
© TRESETarget Industry TRESE Group Department of Computer Science University of Twente P.O. Box AE Enschede, The Netherlands
Software Engineering Laboratory, Department of Computer Science, Graduate School of Information Science and Technology, Osaka University July 21, 2008WODA.
Software Engineering Laboratory, Department of Computer Science, Graduate School of Information Science and Technology, Osaka University IWPSE 2003 Program.
Software Engineering Laboratory, Department of Computer Science, Graduate School of Information Science and Technology, Osaka University Cage: A Keyword.
Extracting a Unified Directory Tree to Compare Similar Software Products Yusuke Sakaguchi, Takashi Ishio, Tetsuya Kanda, Katsuro Inoue Department of Computer.
Department of Computer Science, Graduate School of Information Science & Technology, Osaka University An Empirical Study of Out-dated Third-party Code.
® IBM Software Group © 2009 IBM Corporation Essentials of Modeling with IBM Rational Software Architect V7.5 Module 17: Team Modeling.
Software Engineering Laboratory, Department of Computer Science, Graduate School of Information Science and Technology, Osaka University Extraction of.
Software Engineering Laboratory, Department of Computer Science, Graduate School of Information Science and Technology, Osaka University 1 Extracting Sequence.
Palantír: Increasing Awareness in Distributed Software Development Anita Sarma and André van der Hoek {asarma, Institute for Software.
TEAM FOUNDATION VERSION CONTROL AN OVERVIEW AND WALKTHROUGH By: Michael Mallar.
Objective ICT : Internet of Services, Software & Virtualisation FLOSSEvo some preliminary ideas.
Department of Computer Science, Graduate School of Information Science & Technology, Osaka University Detection of License Inconsistencies in Free and.
Software Engineering Laboratory, Department of Computer Science, Graduate School of Information Science and Technology, Osaka University Software Ingredients:
Search-Based Peer Reviewers Recommendation in Modern Code Review 32 nd IEEE International Conference on Software Maintenance and Evolution (ICSME) 2016.
Evolution of UML.
Source File Set Search for Clone-and-Own Reuse Analysis
Naoya Ujihara1, Ali Ouni2, Takashi Ishio1, Katsuro Inoue1
A Generalized Model for Visualizing Library Popularity, Adoption, and Diffusion within a Software Ecosystem Raula Gaikovina Kula, Coen De Roover, Daniel.
Boris Todorov1, Raula Gaikovina Kula2, Takashi Ishio2, Katsuro Inoue1
Software Engineering Laboratory, Osaka University
The Design Space of Software development methodologies
CSSSPEC6 SOFTWARE DEVELOPMENT WITH QUALITY ASSURANCE
Sarah Dahab Supervised by Stéphane maag Started on March 2016
Visualizing the Evolution of Systems and their Library Dependencies
Raula Gaikovina Kula, Daniel German, Takashi Ishio, Katsuro Inoue
Predicting Fault-Prone Modules Based on Metrics Transitions
Yuhao Wu1, Yuki Manabe2, Daniel M. German3, Katsuro Inoue1
Automated Analysis and Code Generation for Domain-Specific Models
Recommending Adaptive Changes for Framework Evolution
Report on TDL activities since Mts#73
PADLA: A Dynamic Log Level Adapter Using Online Phase Detection
Near-Omniscient Debugging for Java Using Size-Limited Execution Trace
Presentation transcript:

Software Engineering Laboratory, Department of Computer Science, Graduate School of Information Science and Technology, Osaka University VerXCombo: An interactive data visualization of popular library version combinations Yuki Yano, Raula Gaikovina Kula, Takashi Ishio, Katsuro Inoue Graduate School of Information Science and Technology, Osaka University, Japan 1

Department of Computer Science, Graduate School of Information Science and Technology, Osaka University Software Library Reuse Developers often use third-party libraries[1] Benefits: Needed features High quality Time and cost efficient Avoid reinventing the wheel Adopt 3 rd party libraries 2 [1] C. Ebert, “Open source software in industry,” in IEEE Software, 2008, pp. 52–53.

Department of Computer Science, Graduate School of Information Science and Technology, Osaka University Complex library dependencies in large software systems Large systems can have very complex library dependencies Library System 3

Department of Computer Science, Graduate School of Information Science and Technology, Osaka University Library update may cause software breakages because of incompatibility [2][3] System Maintainer needs to decide “when” and “what version” to update? Library Update problem 4 [2] S. Raemaekers, A. van Deursen, and J. Visser, “Semantic versioning versus breaking changes: A study of the maven repository,” in Proc. of SCAM, Sept 2014, pp. 215–224. [3] R. G. Kula, D. M. German, T. Ishio, and K. Inoue, “Trusting a library: A study of the latency to adopt the latest maven release,” in 22nd IEEE Int. Conf. on Soft. Ana., Evo., and Reeng., SANER 2015, Montreal, Canada, March 2-6, 2015, [2] S. Raemaekers, A. van Deursen, and J. Visser, “Semantic versioning versus breaking changes: A study of the maven repository,” in Proc. of SCAM, Sept 2014, pp. 215–224. [3] R. G. Kula, D. M. German, T. Ishio, and K. Inoue, “Trusting a library: A study of the latency to adopt the latest maven release,” in 22nd IEEE Int. Conf. on Soft. Ana., Evo., and Reeng., SANER 2015, Montreal, Canada, March 2-6, 2015,

Department of Computer Science, Graduate School of Information Science and Technology, Osaka University Propose solution: VerXCombo VerXCombo visualizes popularity of library version combinations to determine best-fit Wisdom of the crowd: Popularity indicates Compatibility VerXCombo 5

Department of Computer Science, Graduate School of Information Science and Technology, Osaka University Visualize library combinations as Parallel Sets[4] Features for User Interaction Features Mouse over highlighting a combination link. Vertical Rearrangement Horizontal Rearrangement Sorting by Popular Usage Sorting by Version [4] F. Bendix, “Visual Analysis Tool for Categorical Data Parallel Sets”, no. 1, 2005.

Department of Computer Science, Graduate School of Information Science and Technology, Osaka University Demo Scenario 7 Commons- Collections Ver. 3.2 Commons- HttpClient Ver. 3.1 Update Joda-Time Ver. ? Commons- Collections Ver. 3.2 Commons- HttpClient Ver. 3.1 Introduce a new library.

Department of Computer Science, Graduate School of Information Science and Technology, Osaka University What information does the user want to know? Q1: What set of the target library version combinations ‘best-fit’ the current system dependency environment? Q2: What is the most popular combination set of libraries? Q3: What combination satisfies the closest to the latest version combination? 8

Department of Computer Science, Graduate School of Information Science and Technology, Osaka University Q1: What set of the target library version combinations ‘fit-in’ the current system dependency environment? 9

Department of Computer Science, Graduate School of Information Science and Technology, Osaka University Q2: What is the most popular combination set of libraries? 10

Department of Computer Science, Graduate School of Information Science and Technology, Osaka University Q3: What combination satisfies the closest to the latest version combination? 11

Department of Computer Science, Graduate School of Information Science and Technology, Osaka University Conclusion and Future Work Our tool uses wisdom of crowd to determine best-fit library update for large systems –Popularity –Latest version Future work –Extend 3 combination to n combination –Explore dependency within libraries(transitive dependency) 12

Department of Computer Science, Graduate School of Information Science and Technology, Osaka University 13 Thank you for your attention!

Department of Computer Science, Graduate School of Information Science and Technology, Osaka University Tool Architecture 14

Department of Computer Science, Graduate School of Information Science and Technology, Osaka University Library combination as Parallel Sets We determine best-fit according to 1.Popularity 2.Latest release version 15

Department of Computer Science, Graduate School of Information Science and Technology, Osaka University Software Evolution and Maintenance Software is always changing –Fix bugs –New features –Software maintenance Library also require updates –New versions library also change 16

Department of Computer Science, Graduate School of Information Science and Technology, Osaka University Real world Scenario 17

Department of Computer Science, Graduate School of Information Science and Technology, Osaka University Dataset Library dependency dataset – Make a dataset by analyzing Projects in GitHub 18

Department of Computer Science, Graduate School of Information Science and Technology, Osaka University Software Evolution Release new versions –New features –Bug fix System Maintainer needs to decide `if’, `when’ and `what to update?’ 19