CS 250: Intro to Software Systems
Principles and practices for engineering software systems. Alternatives analyses, information management, networking and communications, parallel and distributed processing, security and encryption, and social, legal, ethical issues in computing. Modeling languages to capture and explore designs.