Presents the design of programming applications using software engineering techniques. Discusses the development of large programs, data abstraction and structures and the associated algorithms. Prerequisites: CS M125 or CS M10A. Transfer credit: CSU; UC. C-ID: COMP 132.