Software Design task