SEMINAR WEI GUO. Software Visualization in the Large.

Slides:



Advertisements
Similar presentations
Configuration Management
Advertisements

Toward Automatic Music Audio Summary Generation from Signal Analysis Seminar „Communications Engineering“ 11. December 2007 Patricia Signé.
CSCU 411 Software Engineering Chapter 2 Introduction to Software Engineering Management.
© Janice Regan, CMPT 102, Sept CMPT 102 Introduction to Scientific Computer Programming The software development method algorithms.
Building Enterprise Applications Using Visual Studio ®.NET Enterprise Architect.
SSP Re-hosting System Development: CLBM Overview and Module Recognition SSP Team Department of ECE Stevens Institute of Technology Presented by Hongbing.
Presenter : Shih-Tung Huang Tsung-Cheng Lin Kuan-Fu Kuo 2015/6/15 EICE team Model-Level Debugging of Embedded Real-Time Systems Wolfgang Haberl, Markus.
SOFTVIS 2005: Saint Louis, Missouri, USA Michael Burch, Stephan Diehl, Peter Weißgerber: Visual data mining in software archives Martin Pinzger, Harald.
CS 5764 Information Visualization Dr. Chris North.
Data Mining By Archana Ketkar.
Winter Retreat Connecting the Dots: Using Runtime Paths for Macro Analysis Mike Chen, Emre Kıcıman, Anthony Accardi, Armando Fox, Eric Brewer
Visualization. CS351 - Software Engineering (AY2004)2 Program visualization Debugging programs without the aid of support tools can be extremely difficult.
CIS 260 Computer Programming I in C Prof. Timothy Arndt.
ESRM 250 & CFR 520: Introduction to GIS © Phil Hurvitz, KEEP THIS TEXT BOX this slide includes some ESRI fonts. when you save this presentation,
Copyright © SoftTree Technologies, Inc. DB Difference Expert.
Knowledge Science & Engineering Institute, Beijing Normal University, Analyzing Transcripts of Online Asynchronous.
Test Design Techniques
This chapter is extracted from Sommerville’s slides. Text book chapter
1 Software Maintenance and Evolution CSSE 575: Session 8, Part 2 Analyzing Software Repositories Steve Chenoweth Office Phone: (812) Cell: (937)
OOSE 01/17 Institute of Computer Science and Information Engineering, National Cheng Kung University Member:Q 薛弘志 P 蔡文豪 F 周詩御.
Software Configuration Management (SCM)
SCRAM Software Configuration, Release And Management Background SCRAM has been developed to enable large, geographically dispersed and autonomous groups.
University of Palestine Department of Information Technology Done by: Montaser El sabea Supervisors: yassmen El Bobo Unified Modeling Language.
Systems Analysis – Analyzing Requirements.  Analyzing requirement stage identifies user information needs and new systems requirements  IS dev team.
Software Project Management
Software Engineering Laboratory, Department of Computer Science, Graduate School of Information Science and Technology, Osaka University ICSE 2003 Java.
1 CSE 2102 CSE 2102 CSE 2102: Introduction to Software Engineering Ch9: Software Engineering Tools and Environments.
1 How to Apply Static and Dynamic Analysis in Practice © Software Quality Week ‘97 How to Apply Static and Dynamic Analysis in Practice - Otto Vinter Manager.
Richard Johnson  How can we use the visualization tools we currently have more effectively?  How can the Software Development.
Master Thesis Defense Jan Fiedler 04/17/98
A Domain-Specific Modeling Language for Scientific Data Composition and Interoperability Hyun ChoUniversity of Alabama at Birmingham Jeff GrayUniversity.
Software development process ธนวัฒน์ แซ่ เอียบ. The development process Process –set of rules which define how a development project. Methodology and.
File Systems (1). Readings r Reading: Disks, disk scheduling (3.7 of textbook; “How Stuff Works”) r Reading: File System Implementation ( of textbook)
Lucian Voinea Visualizing the Evolution of Code The Visual Code Navigator (VCN) Nunspeet,
Chapter 10 Analysis and Design Discipline. 2 Purpose The purpose is to translate the requirements into a specification that describes how to implement.
The System and Software Development Process Instructor: Dr. Hany H. Ammar Dept. of Computer Science and Electrical Engineering, WVU.
Presented by: Ashgan Fararooy Referenced Papers and Related Work on:
UML as a Specification Language for Embedded Systems. By, Mir Ahmed Ali, Asst. Professor, ECM department, SNIST. By, Prof. Narsiah sir, Director of School.
CS532 TERM PAPER MEASUREMENT IN SOFTWARE ENGINEERING NAVEEN KUMAR SOMA.
Visualizing Large Dynamic Digraphs Michael Burch.
Lecture 9-1 : Intro. to UML (Unified Modeling Language)
Architecture View Models A model is a complete, simplified description of a system from a particular perspective or viewpoint. There is no single view.
Generating Software Documentation in Use Case Maps from Filtered Execution Traces Edna Braun, Daniel Amyot, Timothy Lethbridge University of Ottawa, Canada.
Search Engine using Web Mining COMS E Web Enhanced Information Mgmt Prof. Gail Kaiser Presented By: Rupal Shah (UNI: rrs2146)
Software Engineering1  Verification: The software should conform to its specification  Validation: The software should do what the user really requires.
1 Technical & Business Writing (ENG-715) Muhammad Bilal Bashir UIIT, Rawalpindi.
Extraction Tools and Relational Database Schemas for CVS, SVN, and Bazaar Revision Control Systems.
1 Advanced Software Architecture Muhammad Bilal Bashir PhD Scholar (Computer Science) Mohammad Ali Jinnah University.
1 Experience from Studies of Software Maintenance and Evolution Parastoo Mohagheghi Post doc, NTNU-IDI SEVO Seminar, 16 March 2006.
® IBM Software Group © 2007 IBM Corporation Module 1: Getting Started with Rational Software Architect Essentials of Modeling with IBM Rational Software.
1 Chapter 12 Configuration management This chapter is extracted from Sommerville’s slides. Text book chapter 29 1.
APT Configuration Management May 25th, 2004 APT Configuration Management Jesse Doggett.
1 Presentation Methodology Summary B. Golden. 2 Introduction Why use visualizations?  To facilitate user comprehension  To convey complexity and intricacy.
Introduction to ASP.NET development. Background ASP released in 1996 ASP supported for a minimum 10 years from Windows 8 release ASP.Net 1.0 released.
Configuration & Build Management. Why Software Configuration Management ? The problem: Multiple people have to work on software that is changing More.
The PLA Model: On the Combination of Product-Line Analyses 강태준.
Profiling: What is it? Notes and reflections on profiling and how it could be used in process mining.
SOFTWARE TESTING TRAINING TOOLS SUPPORT FOR SOFTWARE TESTING Chapter 6 immaculateres 1.
Building Enterprise Applications Using Visual Studio®
Cyber Physiology Analysis Framework Concept
Automate Does Not Always Mean Optimize
Data Mining Generally, (Sometimes called data or knowledge discovery) is the process of analyzing data from different perspectives and summarizing it.
Software as Data Structure
Information Visualization Picture worth 1000 words...
Data Warehousing and Data Mining
Academic & More Group 4 谢知晖 王逸雄 郭嘉宋 程若愚.
Chapter 7 Software Testing.
Computational Pipeline Strategies
SeeSoft A Visualization Tool..
Presentation transcript:

SEMINAR WEI GUO

Software Visualization in the Large

Background Large Computer programs are complex and difficult to maintain Invisible nature of software Large team-oriented projects Productivity is low, changes are error-prone, and software projects are often late.

Background Software visualization tools ◦Software structure ◦Run-time behavior ◦The code itself Useful for small projects, do not scale to the production-sized systems. Hand-crafted Requires the designer to understand the code before visualizing it Decomposing? Difficult to decompose “Big picture” lost

New Techniques New scalable techniques for visualizing program text, text properties, and relationships involving program text. The representations of code  Line Representation  Pixel Representation  File Summary Representation  Hierarchical Representations Appliance of them to visualize production softwares  Code version history  Differences between releases  Static properties of code  Code profiling and execution hot spots  Program slides

Visual Presentations 1. Line Representation

Visual Representations 2. Pixel Representation

Visual Representations 3. File Summary Representation

Visual Representations 4. Hierarchical Representations

Software Engineering Examples 1. Code change history ◦Code discovery ◦Code decay ◦Track changes

Software Engineering Examples 2. Program comparison

Software Engineering Examples 3. Code characteristics and software complexity ◦Preprocessor directives ◦Conditional nesting complexity

Software Engineering Examples 4. Program profiles and code coverage

Software Engineering Examples 5. Dynamic program slices

Visual Data Mining in Software Archives

Introduction Software Archives: The information stored by a configuration management system and related tools. It provides the history of a software system. Association rules: suggests further changes that should be performed for a set of given changes. Sequence rules: indicates the order of these changes

Introduction Analyzing the software archives can reveal regularities and anomalies in the development process of the system (rules) This paper discusses the visualization techniques that implemented (EPOSee) to analyze both association as well as sequence rules.

EPOSee A visualization tool that integrates various visualization techniques. Provides:

Association Rules Binary

Association Rules N-ary A and B are disjoint sets each containing at least one item

Sequence Rules Eg: if method print() and method show() of the file Account.java have been changed in a row, then later the documentation GUI.tex has been changed, too.

Case Study: MOZILLA MOZILLA archive contains more than files. We use data mining to extract rules from the MOZILLA CVS archive and applied techniques above. Associations of the files in the /browser subdirectory of the CVS software archive of the MOZILLA project.

Case Study: MOZILLA MOZILLA archive contains more than files. We use data mining to extract rules from the MOZILLA CVS archive and applied techniques above. Support graph for /browser directory of the MOZILLA project to look like the clusters and outliers.

Case Study: MOZILLA MOZILLA archive contains more than files. We use data mining to extract rules from the MOZILLA CVS archive and applied techniques above. Association Rule Matrix of the /browser directory of MOZILLA.

Case Study: MOZILLA MOZILLA archive contains more than files. We use data mining to extract rules from the MOZILLA CVS archive and applied techniques above. Parallel Coordinates View of MOZILLA And its enlarged area

Conclusion 1. Visual representations can make the process of understanding the “invisible” software easier. 2. It’s important to use Case Studies in research.