Differences

This shows you the differences between two versions of the page.

Link to this comparison view

Both sides previous revision Previous revision
Next revision
Previous revision
Last revision Both sides next revision
projects:nlpa [2009/06/29 13:22]
pollock
projects:nlpa [2014/02/16 14:51]
mjhoward [Subprojects]
Line 1: Line 1:
 ====== NLPA: Natural Language Program Analysis ====== ====== NLPA: Natural Language Program Analysis ======
  
-//NLPA combines natural language processing techniques with more traditional program analyses (e.g., call graph analysis) to drive software engineering tools.// 
  
 Throughout the life cycle of an application,​ between 60-90% of resources are devoted to modifying the application to Throughout the life cycle of an application,​ between 60-90% of resources are devoted to modifying the application to
Line 7: Line 6:
  
 Our research group has been investigating how to best extract and utilize natural language Our research group has been investigating how to best extract and utilize natural language
-clues from code. We call this kind of analysis, Natural Language Program Analysis (NLPA), since it combines natural language processing techniques with program analysis to extract natural language information from the identifiers,​ literals, and comments of a program. Using NLPA, we have developed techniques and integrated tools that assist in performing software maintenance tasks, including program understanding,​ navigation, debugging, and aspect mining.+clues from code. We call this kind of analysis, Natural Language Program Analysis (NLPA), since it combines natural language processing techniques with traditional ​program analysis to extract natural language information from the identifiers,​ literals, and comments of a program. Using NLPA, we have developed techniques and integrated tools that assist in performing software maintenance tasks, including program understanding,​ navigation, debugging, and aspect mining.
  
 Thus far, we have focused on NLPA tools that identify scattered code segments that are somehow related: whether it be to search through code to understand a particular concern implementation,​ to mine aspects, or to isolate the location of a bug. Our existing NLPA tools combine program structure information such as calling relationships and code clone analysis with the natural language of comments, identifiers,​ and maintenance requests. Although we have only begun to explore the potential of NLPA, our various experimental results motivate further investigation of NLPA for Thus far, we have focused on NLPA tools that identify scattered code segments that are somehow related: whether it be to search through code to understand a particular concern implementation,​ to mine aspects, or to isolate the location of a bug. Our existing NLPA tools combine program structure information such as calling relationships and code clone analysis with the natural language of comments, identifiers,​ and maintenance requests. Although we have only begun to explore the potential of NLPA, our various experimental results motivate further investigation of NLPA for
Line 18: Line 17:
 [1] L. Erlikh. Leveraging legacy system dollars for e-business. //IT Professional//,​ 2(3):17-23, 2000. [1] L. Erlikh. Leveraging legacy system dollars for e-business. //IT Professional//,​ 2(3):17-23, 2000.
  
-===== Selected Publications ​=====+===== Subprojects ​=====
  
-Emily Hill, Lori Pollock, and K. Vijay-Shanker. **"​Exploring the Neighborhood with Dora to Expedite Software Maintenance"​**,​ //​International Conference on Automated Software Engineering (ASE 2007)//, November 2007. 
  
-Lori Pollock, K. Vijay-Shanker, David Shepherd, Emily Hill, Zachary P. Fry, and Kishen Maloor, **"​Introducing Natural Language Program Analysis"​**,​ Research Group Presentation at the //Workshop on Program Analysis for Software Tools and Engineering (PASTE 2007)//, June 2007.+** Part-of-Speech Tagging of Program Identifiers ** - Samir Gupta, ​Lori Pollock, K. Vijay-Shanker
  
-David Shepherd, Zachary PFryEmily Hill, Lori Pollock, ​and K. Vijay-Shanker, **"​Using Natural Language Program Analysis to Locate and Understand Action-Oriented Concerns”**,​ //​International Conference on Aspect Oriented Software Development (AOSD 2007)//, March 2007.  ​+** Mining Semantically-Similar Verbs in Software ** - Matthew JHowardSamir Gupta, Lori Pollock, K. Vijay-Shanker
  
-David Shepherd, Lori Pollock, and K. Vijay-Shanker, **"​Towards Supporting On-Demand Virtual Remodularization Using Program Graphs”**,​ //​International Conference on Aspect Oriented Software Development (AOSD 2006)//, March 2006.  ​+** Automatic Segmentation of Code into Meaningful Blocks ** - Xiaoran Wang, Lori PollockK. Vijay-Shanker
  
-[[http://servo.cs.wlu.edu/dspace/simple-search?​query=%28%28project:Natural%29+AND+%28project:Language%29+AND+%28project:Program%29+AND+%28project:Analysis%29+AND+%28author:Pollock%29%29&​header=Applying+Natural+Language+Analysis+to+Source+Programs+for+Software+Tools&title=Applying+Natural+Language+Analysis+to+Source+Programs+for+Software+Tools&primSort=Date&submit=Go|All NLPA Publications]]+**[[http://www.cis.udel.edu/~hill/context/​|Contextual Search]]** ​Emily Hill, Lori Pollock, and K Vijay-Shankar. "​Automatically Capturing Source Code Context for Software Maintenance and Reuse."​ International Conf on Software Engineering (ICSE), May 2009. 
 + 
 +**[[http://​www.cis.udel.edu/​~enslen/​Site/​Samurai.html|SAMURAI]]** -Eric Enslen, Emily Hill, Lori Pollock, and K Vijay-Shanker. "​Mining Source Code to Automatically Split Identiers for Software Analysis."​ 6th IEEE Working Conference on Mining Software Repositories (MSR), May 2009. 
 + 
 +**[[http://​www.cis.udel.edu/​~hill/​amap/​|AMAP]]** - Emily Hill, Zachary P. Fry, Haley Boyd, Giriprasad Sridhara, Yana Novikova, Lori Pollock, and K. Vijay-Shanker. "AMAPAutomatically Mining Abbreviation Expansions in Programs to Enhance Software Maintenance Tools."​ MSR 20085th Working Conference on Mining Software Repositories,​ May 2008. 
 + 
 +**[[http://​www.cis.udel.edu/​~hill/​dora/​|Dora]]** - Emily Hill, Lori Pollock, and K. Vijay-Shanker. "​Exploring the Neighborhood with Dora to Expedite Software Maintenance",​ //​International Conference on Automated Software Engineering (ASE 2007)//, November 2007. 
 + 
 +**FindConcept** - David Shepherd, Zachary P. Fry, Emily Hill, Lori Pollock, and K. Vijay-Shanker,​ "​Using ​Natural Language ​Program ​Analysis to Locate and Understand Action-Oriented Concerns”,​ //​International Conference on Aspect Oriented Software Development (AOSD 2007)//, March 2007.   
 + 
 +**Timna** - David Shepherd, Lori Pollock, and Vijay-Shanker K.. "Case Study: Supplementing Program Analysis with Natural Language Analysis to Improve a Reverse Engineering Task." 7th ACM SIGPLAN-SIGSOFT Workshop on Program Analysis ​for Software Tools and Engineering,​ ACM, June 2007. 
 + 
 +===== Publications ===== 
 + 
 +[[http://​servo.cs.wlu.edu/​pubs/​handle/​id/​244/​browse?​value=Natural+Language+Program+Analysis&type=project&sort_by=2&​order=DESC|Complete List of Our NLPA project publications]]
  
  
 ===== Contributors ===== ===== Contributors =====
   * **Faculty**:​ Lori Pollock, K. Vijay-Shanker   * **Faculty**:​ Lori Pollock, K. Vijay-Shanker
-  * **Ph.D. Students**: ​[[http://​www.cis.udel.edu/​~hill|Emily Gibson Hill]], ​Giri Sridhara+  * **Ph.D. Students**: Giri Sridhara
   * **Undergraduates**:​ [[http://​www.cis.udel.edu/​~enslen|Eric Enslen]], [[http://​www.cis.udel.edu/​~malik|Sana Malik]], Jon Schall   * **Undergraduates**:​ [[http://​www.cis.udel.edu/​~enslen|Eric Enslen]], [[http://​www.cis.udel.edu/​~malik|Sana Malik]], Jon Schall
-  * **Collaborators**:​ [[http://​www.cs.mcgill.ca/​~martin/​|Martin Robillard]],​ [[http://​www.win.tue.nl/​~ttourwe/​|Tom Tourwe]] +  * **Collaborators**: ​Brian Robinson (ABB), ​[[http://​www.cs.mcgill.ca/​~martin/​|Martin Robillard]],​ [[http://​www.win.tue.nl/​~ttourwe/​|Tom Tourwe]] 
-  * **Graduates**:​ [[http://​www.cis.udel.edu/​~shepherd|David Shepherd]], Kishen Maloor +  * **Graduates**: ​ ​[[http://​www.cis.udel.edu/​~hill|Emily Gibson Hill]], ​[[http://​www.cis.udel.edu/​~shepherd|David Shepherd]], Kishen Maloor 
-  * **Past Undergraduate Students**: Sue Lister, Meilani Williams, Haley Boyd, [[http://​copland.udel.edu/​~fryz/​|Zak Fry]]+  * **Past Undergraduate Students**: Sue Lister, Meilani Williams, Haley Boyd, Zak Fry
projects/nlpa.txt · Last modified: 2014/02/16 14:53 by mjhoward
  • 213 Smith Hall   •   Computer & Information Sciences   •   Newark, DE 19716  •   USA
    Phone: 302-831-6339  •   Fax: 302-831-8458