نظریه گراف و ترکیبیات در مهندسی نرم‌افزار