Object-Oriented Software Design Academic Essay