Software Testing, Integrity, Optimization
Download
Report
Transcript Software Testing, Integrity, Optimization
Hiperspace Lab
University of Delaware
Antony, Sara, Mike, Ben, Dave, Sreedevi, Emily,
Research in Hiperspace
Optimization of
Cluster
Parallel Programs
Aspect Mining
Dave
Program Analysis
Testing Web
Applications
Sreedevi, Sara, Emily
Compiler Technology
Mike
Antony
Ben
Online Analysis
through
Dynamic Compilers
Mobile Code
Security
Software Engineering…………..Security…..........Compilers….……Parallel Computing
Hiding Communication Latency in
Scientific Applications
Research Problem
How can scientific codes be scaled to large numbers of CPUs?
– Communication impedes scalability
Approach
Hide communication latency
Collect cluster “knowledge”
Compiler analyze dependencies
Asynch I/O harness overlap
Integrated system
to optimize communication
Contribution First to “cluster” optimize
existing MPI codes
Exploiting Dynamic
Compilers
Dynamic compilers: perform additional compilation tasks at run-time
– Adaptive optimizations (tune optimizations to program behavior)
– Dynamic analysis (discover particular actual program behavior)
Dynamic Compiler
Input
Executing Program
Analysis
Results
Research Question: How can dynamic compilation technology be
exploited for use beyond program optimization?
Approach: Extend to analyze for:
Software engineering tasks – impact analysis
Program security testing
Contribution: online analysis - less time/space overhead
- better accuracy
Mobile Program Security
Research Problem
– Mobile code, particularly dynamically evolving mobile code can
greatly enhance current computing models
– How can we validate or control dynamically evolving mobile
programs in an efficient way?
Server
Network
Clients
Proposed Approach
– Embed static Tamper Detection Marks
– Control how the program dynamically evolves
Contribution
– Enable efficient mobile code tamper detection via steganography
– Enable distributed dynamic program transformation technologies in a
safe, efficient manner
Maintenance Testing for Web
Applications
Research Problem: How can we exploit user session logging for testing
of web applications after initial deployment, with minimal tester effort?
Beta Web
Application (v.0.9)
Deployment
Record field data
field data
Users access
Approach:
Web
Application
(v.1.0)
Test v.1.0 with field data
Collect, cluster, reduce user
session data on-the-fly
and automate testing process
Contribution: Scalable, cost-effective, practical, automated
structural testing framework for web applications
Aspect Mining to Generate Software
Views
Research Problem
- Not all code segments get organized well in OO programs.
– How can we Identify and Display views of crosscutting/scattered
“concerns”?
Proposed Approach
– Use machine learning, NLP, and program analyses
– Generate new view of the system within IDE
Contribution
Aid understanding, debugging, maintenance, development
Hiperspace Goals for
Students
-
Learn how to identify ,
formulate, and address
important open problems
Publish in high quality
conferences
Gain teaching experience
Actively participate in postgraduation activities
Develop self confidence and
independence
Build a professional/peer
community
- And, have fun!