P: CSCI 506. A detailed analysis of the problem modeling methodologies used in current software processes. Topics include the role of a methodology in the software engineering process, the object-oriented philosophy of problem modeling, design methods, current methodologies, patterns and components in design and applications.