Abram Hindle, PhD
Assistant Professor, Faculty of Science - Computing Science
447 Athabasca Hall
9119 - 116 St NWEdmonton ABT6G 2E8
Associate Chair (Research), Faculty of Science - Computing Science
- Ph.D., University of Waterloo, David R. Cheriton School of Computer Science, 2010
- Co-supervisors: Prof. Michael W. Godfrey and Prof. Richard C. Holt Dissertation: Evidence-based Software Process Recovery
- M.Sc., University of Victoria, Dept. of Computer Science, 2005
- Supervisor: Prof. Daniel M. German Dissertation: SCQL: A formal model and a query language for source control repositories
- B.Sc. (Honours with distinction), University of Victoria, Faculty of Engineering, Dept. of Computer Science, 2003
Software Engineering, Empirical Software Engineering, Mining Software Repositories, Power Consumption Analysis, Computer Music, Crossover of software engineering and music, ML on ECGs
The focus of my research is the evidence-based study of software development. My field of research depends upon statistics, data mining, social network analysis, machine learning, NLP, signal processing, visualization, and software engineering. With respect to software engineering my research focuses on empirical software engineering, mining software repositories, software development processes, software maintenance, and software metrics. Other interests include computer music, music information retrieval, computer vision, programming languages, and computer security.
CMPUT 301 - Introduction to Software Engineering
Object-oriented design and analysis, with interactive applications as the primary example. Topics include: software process; revision control; Unified Modeling Language (UML); requirements; software architecture, design patterns, frameworks, design guidelines; unit testing; refactoring; software tools. Prerequisite: CMPUT 201 or 275. This course may not be taken for credit if credit has been obtained in MIS 419 or BTM 419.
CMPUT 404 - Web Applications and Architecture
Introduction to modern web architecture, from user-facing applications to machine-facing web-services. Topics include: the evolution of the Internet, relevant technologies and protocols, the architecture of modern web-based information systems, web data exchange and serialization, and service-oriented middleware. Prerequisites: CMPUT 301 and 291, or consent of the instructor.