Hakan Erdogmus

Abstract
This workshop will cover the principles of unit testing using test-driven development (TDD), a popular approach that integrates unit testing with development. TDD is central technical practice that enforces writing tests before production code in an incremental manner, providing the developer with a safety net for implementing new functionality and refactoring code. It makes developers directly responsible for the quality of the code that they write. By the end of the workshop, students will be able to write unit tests using Java and Junit following a small set of principles, express requirements and design decisions in the form of tests, and develop testable code by applying TDD. Students will practice theory by applying the material covered in the context of small examples, both individually and as a group.

Prerequisites:
(1) intermediate knowledge of Java;
(2) familiarity with object-oriented programming;
(3) basic knowledge of git.

Level: all levels

Speaker's Bio
Hakan Erdogmus is an Associate Teaching Professor at Carnegie Mellon University’s Department of Electrical and Computer Engineering. He joined CMU’s Silicon Valley campus in 2013 and is one of the founding faculty of ECE’s Master of Science in Software Engineering program. His research and teaching focus on software quality, testing, modern development practices, software process, measurement, empirical studies, and software engineering economics. He published and lectured extensively on these topics. Hakan is a past Editor in Chief of IEEE Software and co-editor of two Springer volumes on software engineering. He has a PhD in Telecommunications from University of Quebec and an MS in Computer Science from McGill University, Canada. He is a recipient of Eugene L. Grant Award in Engineering Economics awarded by the American Society for Engineering Education.


SEschool@unibz

Updated By Aiman, Claudio, Martin