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