At first I was taken off guard by the concept of NLPA. I kept thinking, what in the world does NLPA have to do with researching software maintenance! Little did I know it is a vital process of analyzing code to make locating program errors easier to find and understand. I am very glad that everything worked out this way! It has been a great adventure seeing how interrelated different concepts and methods in computer science can be!
This summer I started researching a smaller portion of the NLPA research in computer programming. My research was focused on stop words. A stop word is a word found in a computer program that is irrelevant for navigating and tracking program identifiers. Stop words slow down the programmer's ability to locate bugs in computer programs. However, during my study of stop words, my mentors and I noticed that there were interesting observations of how the stop words were used that could better benefit software developers.
Due to these discoveries my project evolved from the study of stop words to the study of preposition word usage in Java program identifiers. Preposition word usage analysis is still a subproject of NLPA, but it is a more refined research area than stop word analysis. We will study the differences and similarities of how prepostions are used in computer programs versus Since in programming developers use identifiers to communicate their ideas in code, we use natural language clues to make it easier for developers to manage and understand code.
Needless to say I am really excited about this research and have even been formulating my own ideas and other ideas on NLPA that I could possibly use for future research...and who knows maybe I can use some of these ideas for graduate school!
Goals and Aspirations
My goal is to build on the foundation already started by previous researchers and current graduate students here at the University of Delaware. I want to contribute something meaningful that will benefit succeeding researchers who will continue work on this project in the future. Other personal goals I hope to reach are efficiently implementing and utilzing the Eclipse program and plug-ins, and finding other programs to test NLPA's efficiency given different programs. Finally, I want to get a better idea of the different information retrieval processes that can be used to improve the overall performance of the NLPA.
It is possible that I will not get to accomplish each of these! However, this is the direction I am working towards! All great accomplishments start out small, and even if I only get to complete one of these goals, that is a closer step to gaining efficiency in our NLPA research.I am very determined and already intrigued by several processes I have seen, and will keep you all updated through my online project journal (My Journey)! So feel free to join me on this exciting journey through the challenges and excitements of NLPA!