Combining Challenge-Based Learning and Design Thinking to Teach Mobile App Development | IEEE Conference Publication | IEEE Xplore