Upload
cory-griffith
View
215
Download
0
Embed Size (px)
Citation preview
Software Visualisation and Comparison Tool - SVCT
http://www.csn.ul.ie/~mrmen/fyp.html
Final Year Project of:
Shane Lillis, 9514147
4th Year Computer Engineering
Supervisor: Mr. Tom Newe
Final Demonstration : 28/4/1999
Project Goals and Motivation
Develop a lecturers tool which can be used to visualise and compare source code files
- used to aid lecturer to identify copied assignments handed in by students
The Visualisation and Comparison
Program (Code) Visualisation
- colouring of the source code text according to the control constructs that exist in the code
- reducing the text to pixel form - ‘Zooming’
Comparison through Visualisation
Boundary Analysis Comparison
SVCT Tool
Bench Demonstration
Some Designs
OMT : The Object Model (with associations)
OMT : Dynamic Models (using the event trace technique)
- Visualising the Source Code Text
- Reducing the textual code to the DIB
- Comparison of 2 files
The Tokenizer algorithm
The FileInformationArray - use and construction
OMT: The Object Model
CFIA = FileInformationArray Class
OMT: The Object Model
The CTempararyComparisonArray class has the same design as the CLinkedListOfFIAs class. Therefore, this is a possible candidate for code reuse.
In the implementation, the CTokenizer class is broken down as follows:
Also, in the implementation, the CBitmap class is known as CDib (Device Independent Bitmap).
The Dynamic Model (1/3)
Figure 1: Event Trace for Visualising Source Code Files
The Dynamic Model (2/3)
Figure 2: Event Trace for Activating the Corresponding Bitmap of a source code file
The Dynamic Model (3/3)
Figure 3: Event Trace for the Comparison of 2 files
SVCT Installation Files
The files installed are as follows
- SVCT.exe
- readme.txt
- mfc42d.dll
- msvcrtd.dll
- mfco42d.dll
These are installed using install.bat - see project website for
download of these files.
The website is a repository for documents, application and source
code employed in the project.
Internet References (1/3) BITMAP RESOURCES www.codeguru.com/bitmap/index.shtml http://devcentral.iftech.com/learning/tutorials/mfc-win32/vc5mfc/ http://home1.stofanet.dk/hansm/index.htm http://www.concentric.net/~cgalbrai/Dibbmp.shtml http://simac.kaist.ac.kr/~mkshin/msvc_source/bitmap/bitmap_toc.shtml http://www.codeguru.com/controls/bitmap_progress.shtml
Tokenizers http://chrisheng.hypermart.net/cc.html http://www.codeguru.com/cpp_mfc/tokenizer.shtml http://www.codeguru.com/editctrl/crysedit.shtml http://207.82.252.253/cgi-bin/linkrd?hm___action=http%3a%2f%2fwww%2ecodeguru%2ecom%2feditctrl
%2fcrysedit%2eshtml
Internet References (2/3) MSVC http://www.r2m.com/windev/ http://oak.oakland.edu/simtel.net/win95/prog.html http://www.powersoftware.com/cgi-bin/www.power-soft.co.uk/download.pl http://www.ecst.csuchico.edu/~jbeck/dev.html http://www.winfiles.com/apps/98/ctools.html http://www.vcdj.com/online/resources/othlink.asp http://www.codeguru.com/samples/Includes.shtml http://www.itlibrary.com/library/0672312425/ch10/ch10.htm www.itlibrary.com
http://www.itknowledge.com
MFC FAQ http://mfcfaq.stingray.com/ http://www.formatics.com/AMP.htm
Internet References (3/3) Magazine Links http://www.cs.ndsu.nodak.edu/~lchen/hot.html http://www.wdj.com/current/products.html
CODE PROFILING PC MAGAZINE http://207.82.252.253/cgi-bin/linkrd?http://www.pcmag.com/alert.htm
PowerBuilder http://slc.sybase.com/events/download.html