I would like to express my gratitude to all those who helped me in my research. I am deeply thankful to Dr. Michael Sobolewski, my thesis advisor, for his support, encouragement and advice. I really appreciated his deep knowledge in the field and great research experience that he shared with his students. I thank him for dedicating his time to orienting me in my research. I would also like to thank my thesis committee members, Dr. Per Andersen and Dr. Gopal Lakhani, for their useful suggestions and feedback. My colleagues in the SORCER lab have been great friends these years. They guided me and shared their experience with me, and I am very thankful to them for that. I am also thankful to the Computer Science department and the people in th...