Cross Language Clone Analysis Team 2 March 3, 2011.

Slides:



Advertisements
Similar presentations
Absence Credit Tracking System April 10, Team Members: Joshua Allen Dave Kristensen Greg Ludwinski Samantha Ratnapuli.
Advertisements

Electric Bus Management System
Code Generation in CDE Remi Lequette ILOG.
{ Dominion - Test Plan Version 1 – 22 nd Apr Aravind Palanisami.
Programming Basics Aims of Programming: –The aim of programming is to write programs to accomplish complex tasks Programming method: –functional decompositional.
Automating Tasks With Macros
1 Lab-1 CSIT-121 Spring 2005 Lab Targets Solving problems on computer Programming in C++ Writing and Running Programs Programming Exercise.
1 Session-I & II CSIT-121 Spring 2006 Session Targets Introducing the VC++.NET Solving problems on computer Programming in C++ Writing and Running Programs.
Operating Systems Simulator Jessica Craddock Kelvin Whyms CPSC 410.
Quality Assurance CS 615. Mission Statement The Quality Assurance team will provide assurance to stakeholders in CS-615/616 projects that their projects.
ESL - A language for Social Networks Team : Fantastic Four Ashwath Narsimhan – Project Manager Jyotsna Sebe – System Architect Shailesh Saroha – System.
CS 1400 Using Microsoft Visual Studio 2005 if you don’t have the appropriate appendix.
About the Presentations The presentations cover the objectives found in the opening of each chapter. All chapter objectives are listed in the beginning.
1 Lab-1 CSIT-121 Fall 2004 Lab Targets Solving problems on computer Programming in C++ Writing and Running Programs Programming Exercise.
Creating a Console Application with Visual Studio
DT265-2 Object Oriented Software Development 2 Lecture 3 : Windows Programming Lecturer Pat Browne
Getting Started Example ICS2O curriculum
Microsoft Visual Basic 2012 CHAPTER ONE Introduction to Visual Basic 2012 Programming.
Microsoft Visual Basic 2005 CHAPTER 1 Introduction to Visual Basic 2005 Programming.
PRINCIPLES OF PROGRAMMING Revision. A Computer  A useful tool for solving a great variety of problems.  To make a computer do anything (i.e. solve.
1 Chapter One A First Program Using C#. 2 Objectives Learn about programming tasks Learn object-oriented programming concepts Learn about the C# programming.
1 Integrated Development Environment Building Your First Project (A Step-By-Step Approach)
A First Program Using C#
1 Lab Session-III CSIT-120 Fall 2000 Revising Previous session Data input and output While loop Exercise Limits and Bounds Session III-B (starts on slide.
Creating and Running Your First C# Program Svetlin Nakov Telerik Corporation
Bogor-Java Environment for Eclipse MSE Presentation II Yong Peng.
CMSC 345 Fall 2000 Unit Testing. The testing process.
Chapter 1: A First Program Using C#. Programming Computer program – A set of instructions that tells a computer what to do – Also called software Software.
TVAC Electronic Call Sheet System Team HeatWave Summer 2007.
CIS 260: App Dev I. 2 Programs and Programming n Program  A sequence of steps designed to accomplish a task n Program design  A detailed _____ for implementing.
Cross Language Clone Analysis Team 2 October 27, 2010.
Cross Language Clone Analysis Team 2 April 7, 2011.
Feasibility Study Cross-language Clone Analysis Team 2.
CIS 260: App Dev I. 2 Programs and Programming n Program  A sequence of steps designed to accomplish a task n Program design  A detailed _____ for implementing.
University of Sunderland CIF 102/FIF102 Fundamentals of DatabasesUnit 15 Programming in Microsoft Access using VBA Using VBA to add functionality.
Programming with Visual C++: Concepts and Projects Chapter 2B: Reading, Processing and Displaying Data (Tutorial)
Microsoft Access 2013 ®® Tutorial 10 Automating Tasks with Macros.
1 Chapter Nine Using GUI Objects and the Visual Studio IDE.
Cross Language Clone Analysis Team 2 October 13, 2010.
1 Programming Environment and Tools VS.Net 2012 First project MSDN Library.
Copyright © 2010 Pearson Education, Inc. Publishing as Pearson Addison-Wesley Starting Out with Programming Logic & Design Second Edition by Tony Gaddis.
Anubha Gupta | Software Engineer Visual Studio Online Microsoft Corp. Visual Studio Enterprise Leveraging modern tools to streamline Build and Release.
Team 1 Health Insurance Management System (HIMS).
Cross Language Clone Analysis Team 2 February 3, 2011.
Accomplishments  Getting larger portion of both Java and C# into CodeDOM to support cross language detections  Source code and statement line number.
10:47:46Service Oriented Cyberinfrastructure Lab, Grid Job Management with Microsoft Project Leor Dilmanian
Cross Language Clone Analysis Team 2 November 22, 2010.
Lecture 02. Java Virtual Machine(JVM) –set of computer software programs and data structures that use a virtual machine model for the execution of other.
Cross Language Clone Analysis Team 2 November 10, 2010.
Cross Language Clone Analysis Team 2. Team Introduction Task Summary Introduction Scope of Work Description of Related Research Identification of User.
Microsoft Visual Basic 2008: Reloaded Third Edition Chapter One An Introduction to Visual Basic 2008.
Cross Language Clone Analysis Team 2 February 3, 2011.
Functions Part I (Syntax). What is a function? A function is a set of statements which is split off into a separate entity that can be used like a “new.
IConverter TEAM 1 Denesh Kumar Krishnan Rajaram Sumanth Meda Jayaprakash Kapil Vyas.
Bogor-Java Environment for Eclipse MSE Presentation III Yong Peng.
Chapter 5: Looping. Using the while Loop Loop – A structure that allows repeated execution of a block of statements Loop body – A block of statements.
The Advantage Series ©2005 The McGraw-Hill Companies, Inc. All rights reserved Chapter 12 Introducing Visual Basic for Applications Microsoft Office Excel.
IS 350 Course Introduction. Slide 2 Objectives Identify the steps performed in the software development life cycle Describe selected tools used to design.
CSIT 108 Review Visual Basic.NET Programming: From Problem Analysis to Program Design.
Getting Started NX Journaling Jeff Roark Yanfeng Automotive Interiors.
Modular Value Stream Safety Map (MOD VSSM)
Computer Software: Programming
Chapter Topics 15.1 Graphical User Interfaces
Introduction to Visual Basic 2008 Programming
C# and the .NET Framework
Cross Language Clone Analysis Team 2 November 22, 2010
Microsoft Access Illustrated
Understanding the Visual IDE
Chapter 15: GUI Applications & Event-Driven Programming
Design Team Name Team Members
Presentation transcript:

Cross Language Clone Analysis Team 2 March 3, 2011

Parsing/CodeDOM Clone Analysis GUI Implementation Documentation Testing Current Status Path Forward 2

 Allen Tucker  Patricia Bradford  Greg Rodgers  Ashley Chafin 3

Parsing and conversion to CodeDOM 4

Accomplishments  Java and C# conversion into CodeDOM to support cross language detections are now equal (see green cells left)  Source code and statement line number associations now in place 5

The Algorithm 6

7  CodeNamespace  CodeTypeDeclaration  CodeMemberMethod ◦ CodeParameterDeclarationExpression

8 TokenizeAnalyze Expressions9/260/26 Statements9/150/26 Other7/240/24 Others Include: CodeMemberField CodeMemberMethod CodeMemberProperty CodeNamespace CodeTypeDeclaration CodeTypeMember CodeTypeParameter Others Include: CodeCatchClause CodeMemberEvent CodeComment CodeDirective CodeEntryPointMethod CodeTypeDelegate

9 Namespace Compile Unit Namespace Type Declaration Member Method Statement Expression Type Declaration Member Method Statement Expression Tokenize() Compare() $T$P(){$T$P} Compare()

10 Next Iteration  At least 75% Complete with Deep Dive  Tokenization  Analysis  Add properties settings to the CloneDetection Interface  Setting lower bound on token length  Setting bounds on confidence levels

Sketches / Demo 11

12

13

14

15

16

17

Documentation Status 18

19

White Box and Black Box Testing 20

 White Box Testing: ◦ Unit Testing  Black Box Testing: ◦ Production Rule Testing ◦ Stress Testing ◦ Functional Testing 21

 Console Project…bypasses GUI ◦ Parses source and builds CodeDOM ◦ No analysis ◦ Targets  JDK1.6  Microsoft Visual Studio

23

24

 Current Test Count: 33  Added test code to cover ◦ Clone analysis ◦ Some stress

28

 We are using our to track our bugs. 29

30

Where we currently stand 31

32  Below is the status of the tasks for this past iteration: ◦ Parsing/CodeDOM  C++ parsing – 15%  C# and Java are both equal for CodeDOM ◦ Clone Analysis  Tokenization & analysis – 75% ◦ GUI  Project management – 100%  Displaying source code – 100%  Sketches for visual design – 100% Where we stand….

33 ◦ Documentation – 96%  User Stories, Use Cases, UML Models, Sketches  Functional Tests  Update schedule ◦ Testing  Unit tests – 90%  Execute functional tests – 100%

 As of March 3, 2011  SLOC: ◦ CS666_Client = 5190 lines ◦ CS666_Core = 2988 lines ◦ CS666_Console = 287 lines ◦ CS666_CppParser = 484 lines ◦ CS666_CsParser = 3459 lines ◦ CS666_JavaParser = 3502 lines ◦ CS666_LanguageSupport = 84 lines ◦ CS666_UnitTests = 944 lines  Total = lines (including unit tests) 34 - Used lcounter.exe to count SLOC

35 - Used lcounter.exe to count SLOC

36 - Used lcounter.exe to count SLOC

Path Forward for the next iteration 37

38 Schedule

39  Below is a list of the tasks for our next iteration: ◦ Parsing/CodeDOM  C++ parsing  Java, C#, C++ conversion to CodeDOM ◦ Clone Analysis  Add property settings to clone analysis ◦ GUI  Project management  Clone analysis  Sketches for visual design Next Iteration

40 ◦ Documentation  User Stories, Use Cases, UML Models, Sketches  Functional Tests  Update schedule ◦ Testing  Unit tests  Execute functional tests  Record bugs/issues found Next Iteration