“Plug-In Aspect” enabled Aspect Browser

Slides:



Advertisements
Similar presentations
Objective Understand web-based digital media production methods, software, and hardware. Course Weight : 10%
Advertisements

The Microsoft View: Module 1: Getting Started. Copyright Course 2559B, Introduction to Visual Basic®.NET Programming with Microsoft®.NET. Lecture 1 Microsoft.
A Guide to Oracle9i1 Creating an Integrated Database Application Chapter 8.
CP476 Internet Computing Browser and Web Server 1 Web Browsers A client software program that allows you to access and view Web pages on the Internet –Examples.
Web-based Portal for Discovery, Retrieval and Visualization of Earth Science Datasets in Grid Environment Zhenping (Jane) Liu.
1 LOMGen: A Learning Object Metadata Generator Applied to Computer Science Terminology A. Singh, H. Boley, V.C. Bhavsar National Research Council and University.
Digital Image Processing Lecture3: Introduction to MATLAB.
GMD German National Research Center for Information Technology Innovation through Research Jörg M. Haake Applying Collaborative Open Hypermedia.
11 Games and Content Session 4.1. Session Overview  Show how games are made up of program code and content  Find out about the content management system.
1 The Problem Do you have: A legacy ABL system with millions of Lines of ABL Code? Years and years of modifications to your ABL code? System documentation.
1 CSE 2102 CSE 2102 CSE 2102: Introduction to Software Engineering Ch9: Software Engineering Tools and Environments.
Introduction to Graphical User Interfaces. Objectives * Students should understand what a procedural program is. * Students should understand what an.
Computing IV Visual C Introduction with OpenCV Example Xinwen Fu.
Software Engineering 2003 Jyrki Nummenmaa 1 CASE Tools CASE = Computer-Aided Software Engineering A set of tools to (optimally) assist in each.
1 1 Lab1 Ismail M. Romi – IT Dept, PPU, Visual Basic 2005 Programming Tour.
Introduction to MDA (Model Driven Architecture) CYT.
Comment Extractor Ethan Chan Tianqiu Tem Wang Juliana Wong.
Tutorial 111 The Visual Studio.NET Environment The major differences between Visual Basic 6.0 and Visual Basic.NET are the latter’s support for true object-oriented.
WAD Web application for managing the indicators of the research activity in a university department.
RELATIONAL FAULT TOLERANT INTERFACE TO HETEROGENEOUS DISTRIBUTED DATABASES Prof. Osama Abulnaja Afraa Khalifah
Alcatel-Lucent CDC Workshop, Coaching & Knowledge Transfer Architecture.
4 Copyright © 2004, Oracle. All rights reserved. Creating a Basic Form Module.
Plug-In Architecture Pattern. Problem The functionality of a system needs to be extended after the software is shipped The set of possible post-shipment.
Creating Graphical User Interfaces (GUI’s) with MATLAB By Jeffrey A. Webb OSU Gateway Coalition Member.
OCLC SiteSearch User Group Meeting Implementing Interface Gadgets SiteSearch User Group Workshop 3/23/1999.
3 Copyright © 2004, Oracle. All rights reserved. Working in the Forms Developer Environment.
User Profiling using Semantic Web Group members: Ashwin Somaiah Asha Stephen Charlie Sudharshan Reddy.
1 Symbology 2. 2 Outline Symbology and mapping Classification examples Standard symbols Tricks Quiz 2.
Structural Design Software TYLER HUTCHISON. Requirements  Develop an interface to generate a text file.  The text file is then passed to one of five.
1 More About HTML Images and Links. 22 Objectives You will be able to Include images in your HTML page. Create links to other pages on your HTML page.
The Development Process Compilation. Compilation - Dr. Craig A. Struble 2 Programming Process Problem Solving Phase We will spend significant time on.
Institute for the Protection and Security of the Citizen HAZAS – Hazard Assessment ECCAIRS Technical Course Provided by the Joint Research Centre - Ispra.
Performane Analyzer Performance Analysis and Visualization of Large-Scale Uintah Simulations Kai Li, Allen D. Malony, Sameer Shende, Robert Bell Performance.
Plug-In Architecture Pattern. Problem The functionality of a system needs to be extended after the software is shipped The set of possible post-shipment.
September 2003, 7 th EDG Conference, Heidelberg – Roberta Faggian, CERN/IT CERN – European Organization for Nuclear Research The GRACE Project GRid enabled.
 Project Team: Suzana Vaserman David Fleish Moran Zafir Tzvika Stein  Academic adviser: Dr. Mayer Goldberg  Technical adviser: Mr. Guy Wiener.
Introduction to Algorithm. What is Algorithm? an algorithm is any well-defined computational procedure that takes some value, or set of values, as input.
Business rules.
Strategy Pattern Jim Fawcett CSE776 – Design Patterns Fall 2014.
Business Directory REST API
Working in the Forms Developer Environment
/* LIFE RUNS ON CODE*/ Konstantinos Pantos Microsoft MVP ASP.NET
Explanation of the demo scripts and installation guide
Basic-Algorithms-of-Bioinformatics Applet
Plug-in Framework ETICS All Hands – October 2006
Extending the NetCDF Supported Data Formats using a Dispatch Layer
Software Documentation
Design and Consume DataWindows in Visual Studio 2005
Predefined Dialog Boxes
Aspect Browser Plus Ling Neil Patricia.
RichAnnotator: Annotating rich (XML-like) documents
File service architecture
Object-oriented design for multiple classes
Lecture 1: Multi-tier Architecture Overview
Objective Understand web-based digital media production methods, software, and hardware. Course Weight : 10%
Digital Image Processing
Lab 1 Introduction to C++.
Constructing MDA-based Application Using Rational XDE for .NET
Code Analysis, Repository and Modelling for e-Neuroscience
Metadata The metadata contains
DATABASES WHAT IS A DATABASE?
CMSC 345 Programming.
Defining Classes and Methods
Code Analysis, Repository and Modelling for e-Neuroscience
Supporting High-Performance Data Processing on Flat-Files
Overview of the IDE Visual Studio .NET is Microsoft’s Integrated Development Environment (IDE) for creating, running and debugging programs (also.
SeeSoft A Visualization Tool..
Plug-In Architecture Pattern
Implementation Plan system integration required for each iteration
Strategy Pattern Jim Fawcett CSE776 – Design Patterns Fall 2014.
Presentation transcript:

“Plug-In Aspect” enabled Aspect Browser Vadim Bokin Jonathan Neddenriep

Motivation / Problem Current aspects in Aspect Browser (AB) are generated exclusively through text search. Programmers would like other means of identifying and creating aspects to visualize code. 11/16/2018 CSE 218

Claim AB can be modified / extended to allow outside aspects to be viewed through the existing graphical user interface leveraging the map metaphor. 11/16/2018 CSE 218

Proposed Solution Create means to add plug-in aspects to AB which are based on the file and line number, instead of textual mapping. Add additional menu items to the AB interface to allow outside aspect imports. 11/16/2018 CSE 218

Solution Defined an interface, where the plug-in is to return the name of the new aspects and all file lines associated with it. Integrated our PluginManager with AB’s Menu class to generate new Menu items. PluginManager is a ClassLoader that searches through specific directories for classes that implement our Plug-In Aspect interface. 11/16/2018 CSE 218

Current Uses We created 2 Plug-ins (1) A flat-file reader where each file is a single aspect and has the format <AspectName>::<color> <FileName>::<LineNumber> 11/16/2018 CSE 218

Uses [ continued ] EXAMPLE: MainMethods::#ff00ff Abc.java::14 Def.java::17 Ghi.java::13 11/16/2018 CSE 218

Uses [ continued ] (2) RCS (CVS) repository file parser As parameter takes in a number of [filenames]+ and processes their respective repository files (that have the name “filename,v” We used CVS during a previous project in cse210 and now can visually see who actually did all the work  [ Demo ] 11/16/2018 CSE 218

Possible Uses Current CVS parser replicates basic SeeSoft functionality. Can be used with Lackwit (types by use) Dynamic code profiling output (can show visually what code is being executed). Eg jProf 11/16/2018 CSE 218

Lessons learned Jumping into the middle of someone else’s code (AB code) is very difficult. We needed to refine the interface between our components before we were able to divide up the work. … and most important… The Map Metaphor is applicable to the information extracted from CVS repository This shows that there are many applications for AB besides text-based search. 11/16/2018 CSE 218

Questions? 11/16/2018 CSE 218