Application software development course design