Building on the foundations of algorithm implementation and data representation, this course focuses on the principles of constructing a modern distributed application. Cadets study the principles, construction, and interaction of user interface, network, web server, and database components to produce an effective distributed application. Cadets will learn new tools and skills as a natural part of analyzing, designing, and delivering a system that solves a given problem.