Download presentation
Presentation is loading. Please wait.
Published byToby Horn Modified over 9 years ago
1
Lori Pollock Professor Program Analysis, Software Development/Maintenance Tools, Optimizing Compilers My Journey to today: 1981 Started Grad School Late 1985 Married Mark Early 1986PhD in CS at University of Pittsburgh 1988 Lauren was born 1986-1990 Assistant Professor, Rice University, Houston 1990 Lindsay was born 1991-present Assistant, Associate, Full Professor UD CIS 1995 Matt was born
2
What I do here at UD Research –Software Engineering and Compilation Lab (Hiperspace) 213 Smith Hall –Collaborations Vijay Shanker (UD CIS), Lisa Marvel (Army Research Lab), Martin Swany (UD CIS), John Cavazos (UD CIS), Guang Gao (UD ECE) –Funding Several NSF grants; previously Army funding Graduate Teaching –CISC 672 Compilers –CISC 872 Program Analysis and Transformations –CISC 879 Software Testing and Maintenance –CISC 879 Software Tools and Environments
3
What I do outside UD Cochair, Computing Research Association (CRA)’s Committee on the Status of Women in Computer Research (CRA-W) Mentoring – speaker at mentoring workshops for undergrads, grads, assistant and associate profs, and industry lab researchers Program committees, conference organization, NSF panels, paper reviews,… (typical of university researchers)
4
Hiperspace Lab Grad Students University of Delaware Emily Gibson PhD Antony Danalis PhD Ben Breech PhD Giri Sridhara PhD Kishen Maloor Masters Thesis
5
Just Completed PhD in 2007 Mike Jochen Assistant Prof East Stroudsburg U Sara Sprenkle Assistant Prof Washington & Lee U David Shepherd Postdoc University of British Columbia, Canada
6
Research in Hiperspace Program Analysis Compiler Technology Natural Language Analysis of Programs Testing Web Applications Mobile Code Security Optimization of Cluster Parallel Programs Runtime Test Generation via Dynamic Compilers Software Engineering…………..Security…..........Compilers….……Parallel Computing Dave, Emily, Giri, Kishen Antony Ben Mike Sreedevi, Sara, Emily
7
ASPhALT: Automatic System for Parallel AppLication Transformation 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
8
RUGRAT: RUntime GeneRAtion of Tests with Dynamic Compilers Dynamic Compiler Executing Program Analysis Input 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 mechanism and error handling testing Dynamic compilers: perform analysis and code modification at runtime
9
SECRYT – StEgo-CRYpto Tamper detection 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 Clients Network Server Clients Network Proposed Approach –Embed static Tamper Detection Marks (SECRYT) –Control how the program dynamically evolves (DOCTORS) Contribution –Enable efficient mobile code tamper detection via steganography –Enable distributed dynamic program transformation technologies in a safe, efficient manner
10
Maintenance Testing for Web Applications Beta Web Application (v.0.9) Deployment Web Application (v.1.0) Users access Record field data field data Test v.1.0 with field data Research Problem: How can we exploit user session logging for testing of web applications after initial deployment, with minimal tester effort? 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 Approach:
11
Natural Language-based Analysis of Software Research Problem - 60-90% software costs are in reading and navigating large software systems to fix bugs and add new features. - Programmers leave clues of their intent as they choose names. Proposed Approach –Develop, extend, and apply natural language-based analysis of programmer-given names and comments and use in client tools Contribution - Aid understanding, debugging, maintenance, development Focus on actions Correspond to verbs Verbs need Direct Object
12
Clients of NLPA Thus Far FindConcept: Search Tool Timna: Aspect Miner Dora the Explorer: Program Explorer given a seed NL technology used Synonyms, collocations, morphology, word frequencies, part-of- speech tagging, AOIG Evaluation indicates Natural language information shows real promise for taking software development tools to the next level of effectiveness Key to success Accurate extraction of NL clues
13
Current Research in Hiperspace Program Analysis Compiler Technology Natural Language Analysis of Code Optimization of Cluster Parallel Programs Runtime Test Generation via Dynamic Compilers Software Engineering…………..Security…..........Compilers….……Parallel Computing Natural Language Analysis of comments
14
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 post- graduation activities -Develop self confidence and independence -Build a professional/peer community - And, have fun!
Similar presentations
© 2024 SlidePlayer.com. Inc.
All rights reserved.