Unit 3. Modeling, Algorithms, and Patterns in Programming