Undergraduate version of CS-505. Object Oriented principals and concepts, classes, objects and interfaces; as well as inheritance, encapsulation, polymorphism and aggregation; Students will explore the Unified Process and Object Oriented software life cycle. CASE tools and iterative and incremental software development approaches are also covered. Advantages of Object Oriented design patterns are demonstrated. Prerequisite: CS-225 or CS-230 or CS-200. (3-0-3)