Thesis Submitted for the Degree Requirements of: Doctor of Philosophy in Computer Science (2016)